<SEC-DOCUMENT>0001558370-22-004635.txt : 20220329
<SEC-HEADER>0001558370-22-004635.hdr.sgml : 20220329
<ACCEPTANCE-DATETIME>20220329171348
ACCESSION NUMBER:		0001558370-22-004635
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		119
CONFORMED PERIOD OF REPORT:	20211231
FILED AS OF DATE:		20220329
DATE AS OF CHANGE:		20220329

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Consolidated Water Co. Ltd.
		CENTRAL INDEX KEY:			0000928340
		STANDARD INDUSTRIAL CLASSIFICATION:	WATER SUPPLY [4941]
		IRS NUMBER:				000000000
		STATE OF INCORPORATION:			E9
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-25248
		FILM NUMBER:		22781979

	BUSINESS ADDRESS:	
		STREET 1:		REGATTA OFFICE PARK, WINDWARD THREE,
		STREET 2:		4TH FLOOR, WEST BAY ROAD, P.O. BOX 1114
		CITY:			GRAND CAYMAN
		STATE:			E9
		ZIP:			KY1-1102
		BUSINESS PHONE:		345-945-4277

	MAIL ADDRESS:	
		STREET 1:		REGATTA OFFICE PARK, WINDWARD THREE,
		STREET 2:		4TH FLOOR, WEST BAY ROAD, P.O. BOX 1114
		CITY:			GRAND CAYMAN
		STATE:			E9
		ZIP:			KY1-1102

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	CONSOLIDATED WATER CO LTD
		DATE OF NAME CHANGE:	19990330

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	CAYMAN WATER CO LTD
		DATE OF NAME CHANGE:	19941212
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>cwco-20211231x10k.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='UTF-8'?>

      <!-- iXBRL document created with: Toppan Merrill Bridge iXBRL 9.6.8042.36810 -->
      <!-- Based on: iXBRL 1.1 -->
      <!-- Created on: 3/29/2022 8:51:03 PM -->
      <!-- iXBRL Library version: 1.0.8042.36816 -->
      <!-- iXBRL Service Job ID: 75bb3097-2f06-4126-9030-70ed3b52e358 -->

  <html xmlns:stpr="http://xbrl.sec.gov/stpr/2021" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:cwco="http://www.cwco.com/20211231" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2021" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dei="http://xbrl.sec.gov/dei/2021q4" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:xbrldi="http://xbrl.org/2006/xbrldi"><head><meta content="text/html" http-equiv="content-type" /><title></title></head><body><div style="margin-top:30pt;"></div><div style="display:none;"><ix:header><ix:hidden><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" xs:nil="true" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" name="us-gaap:CommitmentsAndContingencies" id="Hidden_UMWjUHPHZ0yMv5yynWkGew"></ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" xs:nil="true" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" name="us-gaap:CommitmentsAndContingencies" id="Hidden_Argt-cxyxkKa3ClAu51yDg"></ix:nonFraction><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityCentralIndexKey" id="Tc_7naAnXzyBUiTrDALWIntQg_1_1">0000928340</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:CurrentFiscalYearEndDate" id="Tc_FhrA92gN7E-Yu17uudLjbg_2_1">--12-31</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentFiscalYearFocus" id="Tc_jAeLQm7a3Ey8ReqnQBhUpQ_3_1">2021</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentFiscalPeriodFocus" id="Tc_dQB8OJn9MEOMMgrzyaww0Q_4_1">FY</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:AmendmentFlag" id="Tc_AArLMT2IwUuLCTjve7QCCQ_5_1">false</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityIncorporationStateCountryCode" id="Hidden_Sz9kI-27qUOVVljG2DBb2g">KY</ix:nonNumeric><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="INF" name="us-gaap:PreferredStockSharesIssued" id="Hidden_emqxMykmwk2ThFkpP2wxLA">31068</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" id="Hidden_uu0zN9ycDUWaXmsBNmtLmQ">28635</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg" decimals="INF" name="us-gaap:CommonStockSharesIssued" id="Hidden_sxtnWVSthEODA80uNzrRkw">15143683</ix:nonFraction><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" id="Hidden_7HifNNE6xkyTI6fN4bdL1g">15243693</ix:nonFraction><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_jAlv-wKdHk6TC4NonWW2Zw" name="cwco:NumberOfDaysAfterConsumptionBillingsAreCollected" id="Hidden_diVp5qBtB0KjZqeIyo-3cQ">P45D</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Hidden_ANe22B19gUG017w1p2eYRQ">P1Y</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Hidden_wAgvE9b-oEOCy5TqD4Q-Ww">P2Y</ix:nonNumeric><ix:nonNumeric contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Hidden_UFQss1Ac5ku0S6GVflhWSQ">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_M_3fIYjfP0ynHMyY6fXXgQ" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Hidden_7Vzzq6mJ2UyIIFUN-Z-LwA">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_KL0_AYYciUig1h4lFosT6g" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Hidden_2CuHKC-KbEypnk7AYihx7Q">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_2_1_2016_To_2_29_2016_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_c-2h8OBDN0aON6oPALMSrw" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Hidden_nq7s2BVEU0y53NOcLsh0Ow">P15Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" name="cwco:AdditionalConsecutiveIndividualRequisiteServicePeriod" id="Hidden_YdM7dYC86EaCKfEKZM-B2w">P4Y</ix:nonNumeric><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw" decimals="0" name="us-gaap:PreferredStockValue" id="Hidden_QN5hwaabf0iOIJGHKM6vcw">0</ix:nonFraction><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" name="cwco:NumberOfDaysOfAverageTradingPriceOfCommonStock" id="Hidden_Tlfe_TGKFk6q2QbewkdKDw">P7D</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" id="Hidden_wsvl4L0MzkWVVe1YTEyRYg">P30D</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Hidden_FTMbIkzyt0eqy4QDdP_stg">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" id="Hidden_8mTRR9wXqkSZbjtKI0msDQ">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" id="Hidden_odlCgAb2tkGuHko8GsFcGA">P45D</ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ" name="cwco:TermOfForeignExchangeRiskToDollarForCertainCurrencies" id="Hidden_bdKxU7g9K0WrA2yhp7tZlw">P20Y</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="cwco-20211231.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_SqK6sNa4l0aOaqplT-GdUg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</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="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_qlfRbIlXskGozRKgpAjyQQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_kmcR6mwf2kemN6tjJfw22Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_S_EL5XcSjkKEALcifPnf3A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_fPxCCfOb20e5coHSZY-Lsw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_V-5ogwZFlkWHNDZfe_CqzQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ijhEl3qLT0SfYvzVe8CHrw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_JPdJe-Ae6Em7c6Q2FrNNpA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_T-3D9wrDF0KEqPIYbp8ETA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_EgJEqOrdJUiL7Fjrd38w_Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_5_31_2013_m3JQDoSat0mLyrWfhFiiHA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2013-05-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_eDN37ynhXkWzWlTmvuQp8w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_qesoc-vMc0isIqsmUe-XyA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember><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="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_duu6DiK0skaZSCkjVOc2Sw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_17--TX751keZOsfNqkcolA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</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="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_3SIn1N2pn0mCFJlU7bK--g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_MHksL3_4KUWwRcG0PTPHCQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_btVR53m-jUGESeOtljKk4Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_X205sNsqy0G5w-LA4lrbDQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</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="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_iZPYwl2HZ02nexQzUx8a2A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_WLmUs0F_OkSgBJDKkXD0HQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_mV1UvFExFEeWFRyR2eypCw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_LI5h7HjgHUSEj_Q_th4x4g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</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="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_0ptnBVw1S0WnjglpvuTvYQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_PmmGV0jAV0WsIRY0tKIu7g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_JIdK-cug7EGsXkUkbWQ3WQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_u9N7H5fmh0KZlJkCM3eR1Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_uh0sxFbAEUq10pMjfSjzjA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:CommonStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_TddUvJ6Na02QRBQfN9PQfg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:CommonStockOptionsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonExecutiveDirectorsSharePlanMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonExecutiveDirectorsSharePlanMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_0MeXq5vZnUCfNimySpnMeQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesRevenuesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_-dFfc8peQEeI3VtY_ZHmpw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:RetailRevenuesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_891yP2BhlE-Tgn7a4CTS-Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingRevenuesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_CSlU1cPtB0WiopIwPeGA1g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkRevenuesMember</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_VG_f1PvOgup9EuImo57Pqu29Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:VG</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_US_RSDYhylA5EaUs8pvVMkuhQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_KY_r_55bqiwcUO3N5_w6UPbXA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_BS_QXJQmBZH70mreEnT1WYT6A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</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="Duration_1_1_2020_To_12_31_2020_srt_ConsolidatedEntitiesAxis_cwco_ConsolidatedWaterBahamasMember_srt_StatementGeographicalAxis_country_BS_TjELs3qLxkKtQNWWCjLUbA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">cwco:ConsolidatedWaterBahamasMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_1aYYTFSqoECTbPyDh9BwmA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesRevenuesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_46W_Lce_VUm9C3NSSmIrPg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:RetailRevenuesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_uzBPARo2t0Gt7yD1NWEUEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingRevenuesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_XL907EX-IEuZ5up-6fmYiw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkRevenuesMember</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_VG_p9lQjE2KGkWokzSh2X3lEA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:VG</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_US_7aRtVe6AbEi0OEu3t7kNBg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_KY__AeU1tTbRU-QVqy9aWCieA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_BS_9Fb5DN0wpkSlngUBr-8NMg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</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="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_6nLBAgvl_Ea8WqzLUJPsMw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_ClrXIKaDvkynEKkj3w8NYg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_3Tsz8pPl-0S59_MFCYzCnA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rvqLB_HJpUewumqfdV2Nsw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_GMVJ3-rPmkeyPiPWP9NqWw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_mSY5_CCAL0e-_eMIRkbUVA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_mPCZyqRXKESTHEJKQCVz5w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_i92QTmrbHUqKBE4qYPwHUA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_Ss0z-whZYUSJvevcASK4_w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_jTY0y4r--EiEXAMHb_nZmQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_d9ohEbz4BkOGpyBII32Zkg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_K3Ihq-TdDE-ZGSnge38sEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_iogff4S0CkCSVSIW9dOHTg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_eczvaTabWUGDHmHOXgGznw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_nYfiDmZ6Rk2oUCZAEVttNA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</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="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_US_s1p_n0GAck66NMeZmI3WSw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_KY_F0359zoYFkaYzxPK-dCbIg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_BS_WSXr0WodAEeIoLOZSTfzRQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_US_8fspIUrFq0iXznqIAr9gnw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_KY_tyOKrtxwtEWR608WKbWa3w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_BS_Df9FN9wj6EOR92k835m07Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_DPIDrrm23U6xCvGcJcB6aA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_1GGLQ6kthUyV7m1_VGBRpw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Dg8BDT9XIEqd5W0viRmQJQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_M_HgzXulXkmcIh_xwKYrWw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_NcZIUjj1GUOB2vhn2iFpZw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_CzfqvDl2wUe2LSnoTArTwA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_rFv8iP5Y7UqmEXng7mXwnA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9DHoHSNk8UGLD-3qmQuO-A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_fGR-Ohfs1U6INXwfYhxHGw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_yIfYKKMuGUmUB0HIqj1MOg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Gq8TCot5x0qU8u3_0ne28Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_IQA4ggKCwUurTE4IwWNvdQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_d9R7-HnSL0iEA4q5aOjxJQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_ZasKl46S-kCWxEsGwCVNBA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_2RQVTP85qkmCSF5ZuRurtA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9gvh9nlZREK3E8_Ajv98yw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_ErvLwk13nkiO2-V7OOxtFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_-yZiGEh88k22O15lfBATRw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:PercWaterCorporationMember</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="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_JfcwYyBEakO8TFxMeFrvMA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:AerexIndustriesIncMember</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="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_MMJbH0DeKk6fK9CLog1cSg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:PercWaterCorporationMember</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="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_IqB3OicrFkeiNIeeIjR-Uw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:AerexIndustriesIncMember</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="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_4nkKVq63Ok2x-GMwgdgt-g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:CapitalizedEngineeringLaborAndMaterialsCostMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_RIhkjGOXukmM43EDG9ye3w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:CapitalizedEngineeringLaborAndMaterialsCostMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember__DZ4cNPD0EWFbocUw4NusA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember_VKsJALKJqkmUBfrieQXVyw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_SmEMh4cxdEiHJigWEhXVQg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_tok_x6VAPUmD3EIwXExBnA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_2_28_2018_srt_OwnershipAxis_cwco_NSCAguaMember_V_2yYieCIE-chbMnJVCtNw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_2_9_2022_To_2_9_2022_srt_RangeAxis_srt_MinimumMember_mG-OHKlDjEuqWQVAjfeE5g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-09</xbrli:startDate><xbrli:endDate>2022-02-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_9_2022_To_2_9_2022_e-hhH-eOVE-bcwgPDZ6Ogw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-09</xbrli:startDate><xbrli:endDate>2022-02-09</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_eK27emARAU2mKKBCyPz6aw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:WaterStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_uELHyMleHUyrT3u21aLCFQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:SparePartsStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_EFM7vPcFNEmC4z7b0LGJ6g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:ConsumablesStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_2URf-WJgHUWNUkUB4ndn2A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:WaterStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_Kj4GgNPmcEO0AQNN4roLJw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:SparePartsStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_mOgZI7LkwkWHR4GtJ0cEUw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:ConsumablesStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_FG065aqhNESf5l2w1wZLgg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</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="Duration_6_1_2021_To_6_30_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_oszWfLjlvEq5bax8GUqm3Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-06-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_7m6rF6Uj90mfuItIrE7hCw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:ProfessionalsFeeMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_TOitYhxwg0W68pJpwEjZ0g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:OtherCreditDeviceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_pO4dE_fbskO9VXGI88UmsQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DirectorsFeesAndExpensesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_Go8uayF_0kizBJckFytZnA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:AmortizationOfIntangiblesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_tNgqPSYlik-XMvXImeXynQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:ProfessionalsFeeMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_pzf1TtXv7ESmfsKJZiTwGw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:OtherCreditDeviceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_LzAYr8PnoUiHD4Lr9hwW5A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DirectorsFeesAndExpensesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_kRpGDMpyNEGfm85XSOZKfQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:AmortizationOfIntangiblesMember</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="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:TradeNameMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:ManagementContractsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:CustomerBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:TradeNameMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:ManagementContractsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:CustomerBacklogMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Muen2zsr-ESASfWfylZ8cg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_x5jvKJPM5kyNOvCafquv3A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Xu56YY7wuUuQ4iEUJyq88Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_2DtZn0YcmUuWeIvU518cjA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_OwnershipAxis_cwco_NSCAguaMember_y34pSeGxCkyAelXMEnbZNA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_0yuwNccBOkiazVHGrZqHCg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">cwco:AguasDeRosaritoSapiDeCvMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_8_31_2016_srt_OwnershipAxis_cwco_NSCAguaMember_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_9ebzzcwQnkOLu-XEmIumYg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">cwco:AguasDeRosaritoSapiDeCvMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2016-08-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_KsdVl-TcrE2EB_xPG1O7Kw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_FL_vVakg1b1O0aRtqSi86JVnQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:FL</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="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">country:KY</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="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_srt_RangeAxis_srt_MaximumMember_5UnaWkFxXUaiqbEuHv1xVQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis">cwco:DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:CA</xbrldi:explicitMember><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="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_jKEZmTVO80GP5Fl_jTaGjA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis">cwco:DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr: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="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr: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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_ETZ4MiAHaEO58VZI3-61ZQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:OtherExpenseMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_2_4xHWNyOUiRFJL1SiphTA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:MaintenanceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_dwJApOGydku2pSUkdE4cXA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:ElectricityMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_3Hk3LMrdnEC7vdv7eMSHzQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:RoyaltiesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_U4ujjFBn80GNcRKr-wSbAA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:MaterialsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:InsuranceMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_ekiKLPPPN0Sq-xNE9FPGlw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:FuelOilMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:EmployeeCostsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DepreciationMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_HftNJsdBOk67Xi6tf0YEYg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:OtherExpenseMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_nIDwp5kSwEeLdwVBQnxtSg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:MaintenanceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_3WUre99xyUmAtlM3gU49yA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:ElectricityMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_8LyZFX58x0amUMmdq91b0A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:RoyaltiesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_3fijKjtLP0i_W_LYAwWCGg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:MaterialsMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:InsuranceMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_zsWawSRNeEq148hA6_fMFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:FuelOilMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:EmployeeCostsMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DepreciationMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Gkceb99m70Oqnxt1VxUgeQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_GrossProfitMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_kuRK6cbUnkOldkSTsMCAJA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:GrossProfitMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</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="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_5_14_2008_us-gaap_OptionIndexedToIssuersEquityTypeAxis_cwco_EquityIncentivePlan2008Member_3Q0krjmaL0mpFVyAg2ZBgg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">cwco:EquityIncentivePlan2008Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2008-05-14</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_VljHS7TLeEuM1EZJT4Aegw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:USD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KYD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BSD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_BMD_yI9Ptl_N-UCFrFY35QHWCw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BMD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:USD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KYD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BSD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_BMD_YbOYPvhNE02T-1w0bLtgBQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BMD</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_8_11_2020_To_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_2IXccD9r5kG85vF-cpFJhQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-08-11</xbrli:startDate><xbrli:endDate>2020-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_24_2020_To_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_DfTzkZcxR0iDw2oJVTFipQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-24</xbrli:startDate><xbrli:endDate>2020-01-24</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_8_11_2020_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_fVPx_MibB0OMJNw6Y5r5GQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_1_24_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_-rAQ5puBFEGgq1eq5MMXmA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_BXNxweqTQESXtjduBYzovg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2012-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonperformancebasedGrantsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_M_3fIYjfP0ynHMyY6fXXgQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_KL0_AYYciUig1h4lFosT6g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</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="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_OpP9NCQeO06JFuLmPuYNug"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2019-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember_PTA0S20ZJ0e5OIrmFA_AAg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2019-10-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_1_2016_To_2_29_2016_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_c-2h8OBDN0aON6oPALMSrw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-02-01</xbrli:startDate><xbrli:endDate>2016-02-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_0UrMNm_IgE20WJPYFn3V2Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_srt_MajorCustomersAxis_cwco_WSCMember_NAQlDRECXky4oRc5QZd7lg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rOFFYC2JR06pIy16OuiGlQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_EWXiKUL8zEWQaZQF2E-9Qg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_6_30_2021_JXJuRA2It0yddTf-0dL5pA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_3_24_2022_OK4vRfr_60OJ9KVAP6NpyQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-03-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_fXbSxGQDBEil6EJ78NbOyg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2013-05-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2013-05-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_1_31_2018_srt_OwnershipAxis_cwco_NSCAguaMember_NnEiRjWZnkOVOe3bRoZISA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:PerformancebasedGrantsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonperformancebasedGrantsMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:PerformancebasedGrantsMember</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="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_SecondPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_rHzf6vwgrEi5AXn4ULiodg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:TypeOfPhasesAxis">cwco:SecondPhaseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-08-22</xbrli:startDate><xbrli:endDate>2016-08-22</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_FirstPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_JTQpx4uNUUeasrgD2BLxZg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:TypeOfPhasesAxis">cwco:FirstPhaseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-08-22</xbrli:startDate><xbrli:endDate>2016-08-22</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_5_1_2010_To_5_31_2010_srt_OwnershipAxis_cwco_NSCAguaMember_ELCRUOm45UyRTNSZEM2cww"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2010-05-01</xbrli:startDate><xbrli:endDate>2010-05-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_5_1_2013_To_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_jqPLIJFZdku8X2mo0bAsBA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2013-05-01</xbrli:startDate><xbrli:endDate>2013-05-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-08-22</xbrli:startDate><xbrli:endDate>2016-08-22</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</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="As_Of_2_28_2012_srt_OwnershipAxis_cwco_NSCAguaMember__pEUZLjDdE-w_1NqjlSrvg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2012-02-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_iFjut3yj2USWDhBKw1EUtQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2019_To_12_31_2019_srt_RangeAxis_srt_MaximumMember_VoBNP3iM4k2BNaN6Qz9urw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-01-01</xbrli:startDate><xbrli:endDate>2019-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_1_2012_To_2_29_2012_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_djn4vltDBUmVX5_2Vdtjgw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2012-02-01</xbrli:startDate><xbrli:endDate>2012-02-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_1_2014_To_2_28_2014_srt_OwnershipAxis_cwco_NSCAguaMember_Eluk4flh70GeTTsoCuRLVg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2014-02-01</xbrli:startDate><xbrli:endDate>2014-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_1_2014_To_2_28_2014_HJpTja8YgkGJaUavhR6H2A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2014-02-01</xbrli:startDate><xbrli:endDate>2014-02-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2012_To_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_VH9UoHlOJEqIuJBRDtZRQA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2012-01-01</xbrli:startDate><xbrli:endDate>2012-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_2_1_2012_To_2_29_2012_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_CYVRFLGpzUqdDV3XmsDmrQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2012-02-01</xbrli:startDate><xbrli:endDate>2012-02-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_oww2NlKTikmmAbu_wf9sNQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-06-29</xbrli:startDate><xbrli:endDate>2020-06-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_jAlv-wKdHk6TC4NonWW2Zw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember__u3VSfhz50eP9mBQI9RtAg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_9_1_2021_To_9_30_2021_srt_OwnershipAxis_cwco_NSCAguaMember_4__250xRJkmbeyT7OJ-G1A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-09-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_sLkepPeG70KqKTgr9Pcu4w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-06-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_d0Dsq74pMUqS5aSJqpup_Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-06-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_yvJMcp0hA0qqmEZprPv3dw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</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="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_W-NwYGTack6NuMLbCHpXdg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_3FbK4qa0gke44tgFa-BN6g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_D1lthUdJE0ycaWtJ1ICfmw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_YxR91NTNuUm49PPfDJS35g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_5yj8uCvmxEisBUbULN8DCQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:WaterAndSewerageCorporationMember</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="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:OneCustomerMember</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:WaterAndSewerageCorporationMember</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="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:OneCustomerMember</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="Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-10-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_7_1_2021_To_9_30_2021_9jAZh4BOB0mcpaqQ_ZXlKw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-07-01</xbrli:startDate><xbrli:endDate>2021-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2021_To_6_30_2021__Gabo7f7HE-d5MnY7otC0Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_3_31_2021_6GR5dwxrG0mn1S8Q07JC_A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_10_1_2020_To_12_31_2020_yaHay4RHZ0q1Fp4qvuDHAg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-10-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_7_1_2020_To_9_30_2020_R0W93yqJ5U-N4DNtaM_56A"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-01</xbrli:startDate><xbrli:endDate>2020-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_4_1_2020_To_6_30_2020_O-Nf9Aq6YUSFYO-nIC9DjQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-04-01</xbrli:startDate><xbrli:endDate>2020-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_3_31_2020_ysyumH7iX02apdWgbu732g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</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="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</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="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-08-28</xbrli:startDate><xbrli:endDate>2020-08-28</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</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="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000928340</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="Unit_Standard_item_q9VGVy0HoU-6ARV1IfDU3A"><xbrli:measure>cwco:item</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw"><xbrli:measure>utr:gal</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA"><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="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q"><xbrli:measure>iso4217:MXN</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_customer_eNCDyeI8C0-i-NfyoLXf-A"><xbrli:measure>cwco:customer</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_ha_K-jpQBTkYEqk72sCRDBJPw"><xbrli:measure>utr:ha</xbrli:measure></xbrli:unit><xbrli:unit id="Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g"><xbrli:measure>cwco:segment</xbrli:measure></xbrli:unit></ix:resources></ix:header></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:1pt;padding-top:1pt;text-align:justify;border-bottom:1px solid #000000;border-top:3.0pt solid #000000;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;background:#00ff00;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="color:#70ad47;font-size:5pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_685c323c_ec94_45e7_8f24_74350db7c4a4"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-size:11pt;font-weight:bold;">UNITED STATES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-size:11pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-weight:bold;">Washington, DC 20549</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-size:7pt;font-weight:bold;">FORM&#160;</b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentType" id="Narr_OfCTyC80nkOUFy3yhlhx5Q"><b style="font-size:7pt;font-weight:bold;">10-K</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">(Mark One)</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentAnnualReport" id="Narr_Da4TXdz3w0ugVuEU4EaClQ"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9746;</span></ix:nonNumeric><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><b style="font-size:7pt;font-weight:bold;">ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><b style="font-size:7pt;font-weight:bold;">For the fiscal&#160;year ended </b><ix:nonNumeric format="ixt:datemonthdayyearen" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentPeriodEndDate" id="Narr_BmDsAGUvO0-GRczRtneyyw"><b style="font-size:7pt;font-weight:bold;">December&#160;31, 2021</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">OR</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:DocumentTransitionReport" id="Narr_nZ9cVS1XIUqlO0KxSOjE4A"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9744;</span></ix:nonNumeric><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><b style="font-size:7pt;font-weight:bold;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt 0pt 10pt 0pt;"><b style="font-weight:bold;">For the transaction period from __________________ to __________________</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-size:7pt;font-weight:bold;">Commission File Number: </b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityFileNumber" id="Narr_LMFkK8A_H0q3J7zPXXrTtg"><b style="font-size:7pt;font-weight:bold;">0-25248</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityRegistrantName" id="Narr_O_PV2D3eeUOz0xzV5fU4dw"><b style="font-weight:bold;">CONSOLIDATED WATER CO.&#160;LTD.</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">(Exact name of Registrant as specified in its charter)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_96b8be10_1fda_4857_b5e6_00acc52d5830"></a><a id="Tc_mQ5T2LUU4EGRVQKo5E2yQg_2_0"></a><a id="Tc_kIt9LrcNpkyGq1NG8FgMcg_2_2"></a><a id="Tc_whDrULO9FUa6ONvgStEZcQ_3_0"></a><a id="Tc_etLg2gTEUESXekM4uG3HUg_8_0"></a><a id="Tc_TR7OLhF4fECAAFS4a3xIIA_8_2"></a><a id="Tc_mDhaUTPXWE65RvpbfrWTvA_9_0"></a><a id="Tc_-H_fNWUptk-zYmvz4ExedQ_9_2"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"></td></tr><tr><td style="vertical-align:top;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="-sec-ix-hidden:Hidden_Sz9kI-27qUOVVljG2DBb2g;"><b style="font-family:'Times New Roman','Times','serif';font-size:7pt;font-style:normal;font-weight:bold;">CAYMAN ISLANDS</b></span></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityTaxIdentificationNumber" id="Tc_2hG7OSY_lEOMSbJcl7x7Sw_1_2"><b style="font-size:7pt;font-weight:bold;">98-0619652</b></ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">(State or other jurisdiction of</p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">(I.R.S. Employer Identification No.)</p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">incorporation or organization)</p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressAddressLine1" id="Tc_A-X-RMvqDEuAGkV6xKTBTg_5_0"><b style="font-size:7pt;font-weight:bold;">Regatta Office Park</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressAddressLine2" id="Tc_0i09iFfAvUaOdDdoiFmMrA_6_0"><b style="font-size:7pt;font-weight:bold;">Windward Three, 4th Floor, West Bay Road</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressAddressLine3" id="Tc_P-wgw4i5jUiIruI4TTIXAg_7_0"><b style="font-size:7pt;font-weight:bold;">P.O.&#160;Box 1114</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressCityOrTown" id="Narr_JAEo7eoWp06KqJ9r2UJgPg"><b style="font-size:7pt;font-weight:bold;">Grand Cayman</b></ix:nonNumeric><b style="font-size:7pt;font-weight:bold;">, </b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressPostalZipCode" id="Narr_6xV8ldiy5kOF8vloD5oOaQ"><b style="font-size:7pt;font-weight:bold;">KY1-1102</b></ix:nonNumeric><b style="font-size:7pt;font-weight:bold;">, </b><ix:nonNumeric format="ixt-sec:countrynameen" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityAddressCountry" id="Narr_Zt8szNdiU0awS2FaNbax7g"><b style="font-size:7pt;font-weight:bold;">Cayman Islands</b></ix:nonNumeric></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">N/A</b></p></td></tr><tr><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">(Address of principal executive offices)</p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">(Zip Code)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:4pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><span style="font-size:7pt;">Registrant&#8217;s telephone number, including area code: </span><b style="font-size:7pt;font-weight:bold;">(</b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:CityAreaCode" id="Narr_IlDGX_waHESaRWKdcJa5Ug"><b style="font-size:7pt;font-weight:bold;">345</b></ix:nonNumeric><b style="font-size:7pt;font-weight:bold;">) </b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:LocalPhoneNumber" id="Narr_hc9280BdQkq6ey3uMLPusQ"><b style="font-size:7pt;font-weight:bold;">945-4277</b></ix:nonNumeric></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Securities registered pursuant to Section&#160;12(b)&#160;of the Act:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_01f068e7_a648_474c_aa6f_cdd0b48870a1"></a><a id="Tc_cbaV5WlFOkahXc8NrAO8tg_1_0"></a><a id="Tc_9gGxf09o_0KL9iITcjvDiw_1_2"></a><a id="Tc_PJCWZvsKU0qYPzFUJs_CYA_1_4"></a><a id="Tc_yxs8K5fDSkedsKfMmwTlNg_2_0"></a><a id="Tc_pvuxh13P5kivYPXS9hmuCg_2_4"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;width:19.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:31%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Title of each class:</b></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:19.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Trading Symbol</b></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:45%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Name of each exchange on which registered</b></p></td></tr><tr><td style="vertical-align:top;width:31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:Security12bTitle" id="Narr_KAj7Xtpv3kasrRWvdMSDiA"><span style="font-size:7pt;">Common Stock</span></ix:nonNumeric><span style="font-size:7pt;">, $0.60 Par Value</span></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:19.99%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:TradingSymbol" id="Tc_EeFlU0NhhkOg8IToeB148Q_2_2"><span style="font-size:7pt;">CWCO</span></ix:nonNumeric></p></td><td style="vertical-align:top;width:1.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;">The </span><ix:nonNumeric format="ixt-sec:exchnameen" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:SecurityExchangeName" id="Narr_ClLGTQ-bXES-KNbegRTBjg"><span style="font-size:7pt;">NASDAQ</span></ix:nonNumeric><span style="font-size:7pt;"> Stock Market LLC (NASDAQ Global Select Market)</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:4pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-weight:bold;">Securities registered pursuant to Section&#160;12(g)&#160;of the Act: None</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule&#160;405 of the Securities Act.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><span style="font-size:7pt;">Yes&#160;</span><span style="font-family:'Times New Roman';font-size:7pt;">&#9723;</span><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityWellKnownSeasonedIssuer" id="Narr_GmXlVTOwB0C6yQE_Jzez5g"><span style="font-size:7pt;">No</span></ix:nonNumeric><span style="font-size:7pt;"> </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark if the registrant is not required to file reports pursuant to Section&#160;13 or Section&#160;15(d)&#160;of the Act.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><span style="font-size:7pt;">Yes </span><span style="font-family:'Times New Roman';font-size:7pt;">&#9723;</span><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160; </span><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityVoluntaryFilers" id="Narr_wnxc0_ph0kyHnX0cM2POZg"><span style="font-size:7pt;">No</span></ix:nonNumeric><span style="font-size:7pt;"> </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;13 or 15(d)&#160;of the Securities Exchange Act of 1934 during the preceding 12&#160;months (or for such shorter period that the registrant was required to file such reports), and (2)&#160;has been subject to such filing requirements for the past 90&#160;days.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityCurrentReportingStatus" id="Narr_Vd5JTNYoVEikffI7w_z2_A"><span style="font-size:7pt;">Yes</span></ix:nonNumeric><span style="font-size:7pt;"> </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span><span style="font-size:7pt;"> &#160;&#160;&#160;No </span><span style="font-family:'Times New Roman';font-size:7pt;">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#160;405 of Regulation S-T (Sec. 232.405 of this chapter) during the preceding 12&#160;months (or for such shorter period that the registrant was required to submit such files).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 7pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityInteractiveDataCurrent" id="Narr_aNH79SGJXkuo2zNAYCi2zQ"><span style="font-size:7pt;">Yes</span></ix:nonNumeric><span style="font-size:7pt;"> </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160; No </span><span style="font-family:'Times New Roman';font-size:7pt;">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, 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&#160;12b-2 of the Exchange Act.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"></td></tr><tr><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;">Large accelerated filer <span style="font-family:'Times New Roman';">&#9723;</span></p></td><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">Accelerated filer <span style="font-family:'Times New Roman';">&#9723;</span></p></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><ix:nonNumeric format="ixt-sec:entityfilercategoryen" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityFilerCategory" id="Narr_TTxYZMOyaEako0YkaB4m8Q"><span style="font-size:7pt;">Non-accelerated filer</span></ix:nonNumeric><span style="font-size:7pt;"> </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span></p></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;">Smaller reporting company </span><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntitySmallBusiness" id="Narr_QcOGZtSJCUOO60T_veIBzw"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9746;</span></ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:24.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:7pt;">Emerging growth company </span><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityEmergingGrowthCompany" id="Narr_B2EqFLFTUUKvimtN6OPk8Q"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9744;</span></ix:nonNumeric></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt 0pt 7pt 0pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section&#160;13(a)&#160;of the Exchange Act. <span style="font-family:'Times New Roman';">&#9723;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:7pt;">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 (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. &#160;</span><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:IcfrAuditorAttestationFlag" id="Narr_XiBbIOAsfkGGUj7D65pJJw"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9744;</span></ix:nonNumeric><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:7pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 7pt 0pt;"><span style="font-size:7pt;">Yes&#160;</span><ix:nonNumeric format="ixt-sec:boolballotbox" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:EntityShellCompany" id="Narr_o8Iwaz21o0mm9endjgMziQ"><span style="font-family:'Segoe UI Symbol';font-size:7pt;">&#9744;</span></ix:nonNumeric><span style="font-size:7pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;No </span><span style="font-family:'Times New Roman';font-size:7pt;">&#8999;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt 0pt 7pt 0pt;">The aggregate market value of common stock held by non-affiliates of the registrant, based on the closing sales price for the registrant&#8217;s common shares, as reported on the NASDAQ Global Select Market on June&#160;30, 2021, was $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" format="ixt:numdotdecimal" scale="0" contextRef="As_Of_6_30_2021_JXJuRA2It0yddTf-0dL5pA" decimals="0" name="dei:EntityPublicFloat" id="Narr_YFPTgEHufkm-2AZPgfVAFg">169,038,813</ix:nonFraction>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt 0pt 7pt 0pt;">As of March&#160;24, 2022, <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" format="ixt:numdotdecimal" scale="0" contextRef="As_Of_3_24_2022_OK4vRfr_60OJ9KVAP6NpyQ" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" id="Narr_DV9WbGwB1UmvwDH8v-PZCw">15,267,104</ix:nonFraction> shares of the registrant&#8217;s common shares were outstanding.</p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:center;margin:0pt 0pt 7pt 0pt;"><b style="font-weight:bold;">DOCUMENTS INCORPORATED BY REFERENCE:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:7pt;text-align:justify;margin:0pt;">Portions of the registrant&#8217;s Proxy Statement related to its 2022 Annual Shareholders&#8217; Meeting will be subsequently filed with the Securities and Exchange Commission and are incorporated by reference into Part&#160;III of this Form&#160;10-K.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:7pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:1pt;padding-top:1pt;text-align:justify;border-bottom:3.0pt solid #000000;border-top:1px solid #000000;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:0pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_e9a1609f_879d_4973_82e6_7857fb6b3550"></a><a id="TOC"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">TABLE OF CONTENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;</p></div></div></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Section</b></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Description</b></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Page</b></p></td></tr><tr><td colspan="3" style="vertical-align:top;width:94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#CAUTIONARYNOTEREGARDINGFORWARDLOOKINGSTA"><span style="font-style:normal;font-weight:normal;">Cautionary Note Regarding Forward-Looking Statements</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">3</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#PARTI_3913"><span style="font-style:normal;font-weight:normal;">PART&#160;I</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">4</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1BUSINESS_692433"><span style="font-style:normal;font-weight:normal;">Item 1.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1BUSINESS_692433"><span style="font-style:normal;font-weight:normal;">Business</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">4</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1ARISKFACTORS_204204"><span style="font-style:normal;font-weight:normal;">Item 1A.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1ARISKFACTORS_204204"><span style="font-style:normal;font-weight:normal;">Risk Factors</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">15</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1BUNRESOLVEDSTAFFCOMMENTS_18744"><span style="font-style:normal;font-weight:normal;">Item 1B.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM1BUNRESOLVEDSTAFFCOMMENTS_18744"><span style="font-style:normal;font-weight:normal;">Unresolved Staff Comments</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">23</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM2PROPERTIES_34383"><span style="font-style:normal;font-weight:normal;">Item 2.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM2PROPERTIES_34383"><span style="font-style:normal;font-weight:normal;">Properties</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">23</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM3LEGALPROCEEDINGS_473093"><span style="font-style:normal;font-weight:normal;">Item 3.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM3LEGALPROCEEDINGS_473093"><span style="font-style:normal;font-weight:normal;">Legal Proceedings</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">25</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM4MINESAFETYDISCLOSURE_339474"><span style="font-style:normal;font-weight:normal;">Item 4.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM4MINESAFETYDISCLOSURE_339474"><span style="font-style:normal;font-weight:normal;">Mine Safety Disclosure</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">26</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#PARTII_440321"><span style="font-style:normal;font-weight:normal;">PART&#160;II</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">26</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM5MARKETFORREGISTRANTSCOMMONEQUITYREL"><span style="font-style:normal;font-weight:normal;">Item 5.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM5MARKETFORREGISTRANTSCOMMONEQUITYREL"><span style="font-style:normal;font-weight:normal;">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">26</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM6SELECTEDFINANCIALDATA_458213"><span style="font-style:normal;font-weight:normal;">Item 6.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM6SELECTEDFINANCIALDATA_458213"><span style="font-style:normal;font-weight:normal;">Selected Financial Data</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">27</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM7MANAGEMENTSDISCUSSIONANDANALYSISOFF"><span style="font-style:normal;font-weight:normal;">Item 7.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM7MANAGEMENTSDISCUSSIONANDANALYSISOFF"><span style="font-style:normal;font-weight:normal;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">28</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM7AQUANTITATIVEANDQUALITATIVEDISCLOSU"><span style="font-style:normal;font-weight:normal;">Item 7A.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM7AQUANTITATIVEANDQUALITATIVEDISCLOSU"><span style="font-style:normal;font-weight:normal;">Quantitative and Qualitative Disclosure about Market Risk</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">42</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM8FINANCIALSTATEMENTSANDSUPPLEMENTARY"><span style="font-style:normal;font-weight:normal;">Item 8.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM8FINANCIALSTATEMENTSANDSUPPLEMENTARY"><span style="font-style:normal;font-weight:normal;">Financial Statements and Supplementary Data</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">43</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9CHANGESINANDDISAGREEMENTSWITHACCOUN"><span style="font-style:normal;font-weight:normal;">Item 9.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9CHANGESINANDDISAGREEMENTSWITHACCOUN"><span style="font-style:normal;font-weight:normal;">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">79</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9ACONTROLSANDPROCEDURES_316636"><span style="font-style:normal;font-weight:normal;">Item 9A.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9ACONTROLSANDPROCEDURES_316636"><span style="font-style:normal;font-weight:normal;">Controls and Procedures</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">79</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9BOTHERINFORMATION"><span style="font-style:normal;font-weight:normal;">Item 9B.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9BOTHERINFORMATION"><span style="font-style:normal;font-weight:normal;">Other Information</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9C_DISCLOSUREREGARDINGFOREIGN"><span style="font-style:normal;font-weight:normal;">Item 9C.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM9C_DISCLOSUREREGARDINGFOREIGN"><span style="font-style:normal;font-weight:normal;">Disclosure Regarding Foreign Jurisdictions that Prevent Inspections</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#PARTIII_659249"><span style="font-style:normal;font-weight:normal;">PART&#160;III</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM10DIRECTORSEXECUTIVEOFFICERSANDCORPO"><span style="font-style:normal;font-weight:normal;">Item 10.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM10DIRECTORSEXECUTIVEOFFICERSANDCORPO"><span style="font-style:normal;font-weight:normal;">Directors, Executive Officers and Corporate Governance</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM11EXECUTIVECOMPENSATION_314827"><span style="font-style:normal;font-weight:normal;">Item 11.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM11EXECUTIVECOMPENSATION_314827"><span style="font-style:normal;font-weight:normal;">Executive Compensation</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM12SECURITYOWNERSHIPOFCERTAINBENEFICI"><span style="font-style:normal;font-weight:normal;">Item 12.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM12SECURITYOWNERSHIPOFCERTAINBENEFICI"><span style="font-style:normal;font-weight:normal;">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">81</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM13CERTAINRELATIONSHIPSANDRELATEDTRAN"><span style="font-style:normal;font-weight:normal;">Item 13.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM13CERTAINRELATIONSHIPSANDRELATEDTRAN"><span style="font-style:normal;font-weight:normal;">Certain Relationships and Related Transactions, and Director Independence</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">82</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM14PRINCIPALACCOUNTINGFEESANDSERVICES"><span style="font-style:normal;font-weight:normal;">Item 14.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM14PRINCIPALACCOUNTINGFEESANDSERVICES"><span style="font-style:normal;font-weight:normal;">Principal Accounting Fees and Services</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">82</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#PARTIV_761160"><span style="font-style:normal;font-weight:normal;">PART&#160;IV</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">82</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt 0pt 0pt 9.89pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM15EXHIBITSFINANCIALSTATEMENTSSCHEDUL"><span style="font-style:normal;font-weight:normal;">Item 15.</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#ITEM15EXHIBITSFINANCIALSTATEMENTSSCHEDUL"><span style="font-style:normal;font-weight:normal;">Exhibits, Financial Statement Schedules</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">82</p></td></tr><tr><td style="vertical-align:top;width:15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#SIGNATURES_660710"><span style="font-style:normal;font-weight:normal;">SIGNATURES</span></a></p></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:78%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:4.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">87</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:12pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">2</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_01d349f7_88b9_4bd2_abd3_c40012d2e67e"></a><a id="CAUTIONARYNOTEREGARDINGFORWARDLOOKINGSTA"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CAUTIONARY NOTE REGARDING FORWARD-LOOKING STATEMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">This Annual Report on Form&#160;10-K contains forward-looking statements within the meaning of the Private Securities Litigation Reform Act of 1995, including but not limited to, statements regarding our future revenue, future plans, objectives, expectations and events, assumptions and estimates. Forward-looking statements can be identified by use of the words or phrases &#8220;will,&#8221; &#8220;will likely result,&#8221; &#8220;are expected to,&#8221; &#8220;will continue,&#8221; &#8220;estimate,&#8221; &#8220;project,&#8221; &#8220;potential,&#8221; &#8220;believe,&#8221; &#8220;plan,&#8221; &#8220;anticipate,&#8221; &#8220;expect,&#8221; &#8220;intend,&#8221; or similar expressions and variations of such words. Statements that are not historical facts are based on our current expectations, beliefs, assumptions, estimates, forecasts and projections for our business and the industry and markets related to our business.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The forward-looking statements contained in this report are not guarantees of future performance and involve certain risks, uncertainties and assumptions which are difficult to predict. Actual outcomes and results may differ materially from what is expressed in such forward-looking statements. Important factors which may affect these actual outcomes and results include, without limitation:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">tourism and weather conditions in the areas we serve;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the impacts of the COVID-19 pandemic, particularly on our retail and manufacturing segments;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the economic, political and social stability of each country in which we conduct or plan to conduct business;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">our relationships with the government entities and other customers we serve;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">regulatory matters, including resolution of the negotiations for the renewal of our retail license on Grand Cayman;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">our ability to successfully enter new markets; and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">other factors, including those &#8220;Risk Factors&#8221; set forth under Part I, Item 1A. &#8220;Risk Factors&#8221; in this Annual Report.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The forward-looking statements in this Annual Report speak as of its date. We expressly disclaim any obligation or undertaking to update or revise any forward-looking statement contained in this Annual Report to reflect any change in our expectations with regard thereto or any change in events, conditions or circumstances on which any forward-looking statement is based, except as may be required by law.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">References herein to &#8220;we,&#8221; &#8220;our,&#8221; &#8220;ours&#8221; and &#8220;us&#8221; refer to Consolidated Water Co. Ltd. and its subsidiaries.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Note Regarding Currency and Exchange Rates</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Unless otherwise indicated, all references to &#8220;$&#8221; or &#8220;US$&#8221; are to United States dollars.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The exchange rate for conversion of Cayman Island dollars (CI$) into US$, as determined by the Cayman Islands Monetary Authority, has been fixed since April&#160;1974 at US$1.20 per CI$1.00.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The exchange rate for conversion of Bahamas dollars (B$) into US$, as determined by the Central Bank of The Bahamas, has been fixed since 1973 at US$1.00 per B$1.00.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The official currency of the British Virgin Islands is the US$.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">3</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:11.5pt;"><a id="_373dda7f_aa6e_4861_b377_bb9ebb2dfc54"></a><a id="PARTI_3913"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">PART&#160;I</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="ITEM1BUSINESS_692433"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 1.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">BUSINESS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Overview</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through our subsidiaries and affiliate, we provide the following services to our customers in the Cayman Islands, The Bahamas, the United States and the British Virgin Islands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">Retail Water Operations.</i><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> We produce potable water from seawater utilizing reverse osmosis technology and supply this water to end-users, including residential, commercial and government customers in the Cayman Islands under an exclusive retail license issued by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman. In 2021, our retail water operations generated approximately 33% of our consolidated revenue.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-align:justify;text-indent:-18pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">Bulk Water Operations.</i><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> We produce potable water from seawater utilizing reverse osmosis technology and supply this water to government-owned distributors in the Cayman Islands and The Bahamas. In 2021, our bulk water operations generated approximately 40% of our consolidated revenue. </span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">Services Operations</i><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">. We design, construct and sell water production and water treatment plants, and we manage and operate water production plants and water treatment and reuse infrastructure for third parties. We also provide water related consulting services. In 2021, our services operations generated approximately 21% of our consolidated revenue.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">Manufacturing Operations.</i><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> We manufacture and service a wide range of specialized and custom water-related products and systems applicable to commercial, municipal and industrial water production, supply and treatment. In 2021, our manufacturing operations generated approximately 6% of our consolidated revenue.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><i style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:normal;">Affiliate Operations. </i><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We own 50% of the voting rights and 43.53% of the equity rights of Ocean Conversion (BVI) Ltd., which produces and supplies bulk water to the British Virgin Islands Water and Sewerage Department.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December&#160;31, 2021, the number of water production and water treatment plants we and our affiliate operated in each country, and the production capacities of these plants, were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:77.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Water Production Plant Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;width:77.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9.9</span></p></td></tr><tr><td style="vertical-align:bottom;width:77.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14.8</span></p></td></tr><tr><td style="vertical-align:bottom;width:77.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">British Virgin Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.8</span></p></td></tr><tr><td style="vertical-align:bottom;width:77.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 25.5</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:36pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(1) </p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">In millions of gallons per day.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:77.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Water Treatment Plant Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;width:77.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">USA</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 52.6</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:77.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:36pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(1) </p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">In estimated millions of gallons per day.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">4</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:249pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Strategy</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are a comprehensive water solutions company that serves a variety of customers through multiple product and service offerings. Presently, we:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">produce and sell potable water through the development and operation of water infrastructure that employs reverse osmosis technology to produce potable water from seawater;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">develop, sell and manage water treatment and water reuse system infrastructure that meets regulatory, environmental and commercial needs and requirements;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">fabricate/manufacture specialized and custom equipment and products employed in the production and treatment of water for municipal, commercial and industrial purposes; and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">provide water-related management and consulting services.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We expect to continue to expand and diversify our products, services and markets to meet the ever-expanding global demand for water.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Key elements of our strategy include:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Market expansion. </i>We continue to seek to expand our existing operations in the markets we believe have significant unfulfilled demands for desalinated potable water, water treatment and reuse systems and our other products and services. These markets include the Caribbean and the United States. We may also pursue business in other markets where we believe we can be successful.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Complementary products, services and businesses</i>. We continue to aggressively pursue acquisitions or joint ventures that (i)&#160;complement and enhance our existing businesses; (ii)&#160;expand our product and service offerings and markets; and (iv)&#160;support our objective to be a comprehensive water solutions provider.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Our Company</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We conduct our operations in the Cayman Islands, The Bahamas, the United States, and the British Virgin Islands through our subsidiaries and our affiliate. Our corporate organizational structure is as follows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><img src="cwco-20211231x10k003.jpg" alt="Graphic" style="display:inline-block;height:248.9pt;left:0%;padding-bottom:0.1pt;position:relative;top:0pt;width:485.3pt;" /></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">5</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Retail Segment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cayman Water Company Limited (&#8220;Cayman Water&#8221;)</i>. Cayman Water operates under an exclusive retail license granted by the Cayman Islands government to provide water to customers within a prescribed service area on Grand Cayman that includes the Seven Mile Beach and West Bay areas, two of the three most populated areas in the Cayman Islands. Cayman Water owns and operates four seawater reverse osmosis desalination plants. Cayman Water and the Water Authority-Cayman (&#8220;WAC&#8221;) (which is owned by the government) are Grand Cayman&#8217;s only water utilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Aquilex,&#160;Inc. (&#8220;Aquilex&#8221;)</i>. Aquilex, a U.S. company, provides financial, engineering, information technology, administrative and supply chain management support services to our subsidiaries and affiliate. We include Aquilex in our retail segment for financial segment reporting purposes; however, it provides services to all four of our business segments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Bulk Segment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Consolidated Water (Bahamas) Limited (&#8220;CW-Bahamas&#8221;).</i> We own 90.9% of CW-Bahamas, which provides bulk water under long-term contracts to the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;), a government agency. CW-Bahamas owns and operates our largest desalination plant and one other desalination plant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Ocean Conversion (Cayman) Limited (&#8220;OC-Cayman&#8221;).</i> OC-Cayman provides bulk water under long-term contracts to the WAC, a government-owned utility and regulatory agency, which distributes the water to properties located outside our exclusive retail license service area on Grand Cayman. OC-Cayman built, sold and operates&#160;three seawater reverse osmosis desalination plants owned by the WAC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Services Segment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">DesalCo Limited (&#8220;DesalCo&#8221;).</i> A Cayman Islands company, DesalCo provides design, management, engineering and construction services for desalination projects as well as management and engineering services relating to municipal water distribution and treatment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">PERC Water Corporation (&#8220;PERC&#8221;).</i> On October&#160;24, 2019, we purchased, through our wholly-owned U.S. subsidiary, Consolidated Water U.S. Holdings,&#160;Inc. (&#8220;CW-Holdings&#8221;), 51% of the equity in PERC, a U.S. company headquartered in Fountain Valley, California. PERC develops, builds, sells, operates and manages water, wastewater and water reuse infrastructure. <span style="background:#ffffff;">In August 2020, we purchased an additional&#160;10% ownership interest of PERC, increasing our ownership of this subsidiary to&#160;61%.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Manufacturing Segment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Aerex Industries,&#160;Inc. (&#8220;Aerex&#8221;)</i>. In 2016, we purchased, through CW-Holdings, 51% of the equity in Aerex, a U.S. company located in Fort Pierce, Florida. Aerex is an original equipment manufacturer of a wide range of specialized and custom products and systems applicable to desalination, municipal water treatment and industrial water and wastewater treatment. Aerex&#8217;s products include reverse osmosis desalination equipment, membrane separation equipment, filtration equipment, piping systems, vessels and custom fabricated components. Aerex also offers engineering, design, consulting, inspection, training and equipment maintenance services to its customers. In January&#160;2020, we acquired the remaining 49% equity interest in Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Affiliate</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Ocean Conversion (BVI) Ltd. (&#8220;OC-BVI&#8221;)</i><span style="font-style:italic;font-weight:bold;">.</span> We own 50% of the voting stock of OC-BVI, a British Virgin Islands company, which sells bulk water to the Government of the British Virgin Islands Water and Sewerage Department. We own an overall 43.53% equity interest in OC-BVI&#8217;s profits and certain profit-sharing rights that raise our effective interest in OC-BVI&#8217;s profits to approximately 45%. OC-BVI also pays our subsidiary, DesalCo, fees for certain engineering and administrative services. We account for our investment in OC-BVI under the equity method of accounting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">6</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Discontinued Operations</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Mexico project development</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;) and Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;).</i> CW-Cooperatief is a wholly-owned Netherlands subsidiary incorporated in 2010. CW-Cooperatief owns 99.9% of NSC, a Mexican company. NSC was formed to pursue a project encompassing the design, construction, ownership and operation of a 100 million gallon per day seawater reverse osmosis desalination plant which was to be located in northern Baja California, Mexico and accompanying pipeline to deliver water to the Mexican potable water system (the &#8220;Project&#8221;). </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On August 22, 2016, the Public Private Partnership Agreement for the Project (the &#8220;APP Contract&#8221;) was executed between AdR, the Comisi&#243;n Estatal del Agua de Baja California (&#8220;CEA&#8221;), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (&#8220;CESPT&#8221;).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On June 29, 2020, the Director General of CEA and the Director General of CESPT terminated the APP Contract. As a result of the cancellation of the APP Contract, we discontinued all development activities associated with the Project and commenced active marketing efforts to sell the land NSC purchased for the Project. Accordingly, the assets and liabilities of CW-Cooperatief, NSC and AdR, as well as all Project development expenses and the impairment loss these subsidiaries incurred, have been reclassified from the services segment to discontinued operations in our consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Our Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For fiscal year 2021, our retail water, bulk water, services and manufacturing segments generated approximately 33%, 40%, 21% and 6%, respectively, of our consolidated revenue. For additional information about our business segments and geographical information about our operating revenue and long-lived assets, see Note 14 to our consolidated financial statements at ITEM 8 of this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Retail Water Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For fiscal years 2021 and 2020, our retail water operations accounted for approximately 33%, and 32%, respectively, of our consolidated revenue. This business produces and supplies water to end-users, including residential, commercial and government customers in the Cayman Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Retail Operations in the Cayman Islands</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We sell water through our retail operations under a license issued in July&#160;1990 by the Cayman Islands government (the &#8220;1990 license&#8221;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January&#160;2018, we continue to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman: Seven Mile Beach and West Bay.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The 1990 license was originally scheduled to expire in July&#160;2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the license expired on January&#160;31, 2018. We continue to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with our understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. We continue to pay the royalty required under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#8220;OfReg&#8221;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services and promoting competition. OfReg, which began operations </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">7</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for economic regulation of the water utility sector and the negotiations with us for a new retail license from the WAC to OfReg in May&#160;2017. We began license negotiations with OfReg in July&#160;2017 and such negotiations are ongoing. We have been informed during our retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of our license in a manner that could significantly reduce the operating income and cash flows we have historically generated from our retail license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">See also ITEM 1.A. RISK FACTORS and ITEM 7. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS - Material Commitments, Expenditures and Contingencies - <i style="font-style:italic;">Cayman Water Retail License</i>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our retail operations in the Cayman Islands produce potable water at four seawater reverse osmosis desalination plants in Grand Cayman located at our Abel Castillo Water Works (&#8220;ACWW&#8221;), Britannia and West Bay sites. We own the land for our ACWW and West Bay plants and have entered into a lease for the land for our Britannia plant that expires January&#160;1, 2027. The current aggregate production capacity of the two plants located at ACWW is 3.0 million gallons of water per day. The production capacity of the Britannia plant is 715,000 gallons of water per day. The production capacity of the West Bay plant is 885,000 gallons of water per day.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Electricity to our plants is supplied by Caribbean Utilities Co. Ltd., a publicly traded utility company. We maintain diesel engine-driven standby generators at all three retail plant sites with sufficient capacity to operate our distribution pumps and other essential equipment during any temporary interruptions in electricity supply. Standby generation capacity is available at our ACWW plants and West Bay plant to operate a portion of the water production capacity as well.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our distribution system is connected to the distribution system of the WAC. In prior years, during emergencies, we have purchased water from the WAC for brief periods of time and have also sold potable water to the WAC from our retail plants.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our pipeline system on Grand Cayman covers the Seven Mile Beach and West Bay areas and consists of approximately 100 miles of potable water pipeline. We extend our distribution system periodically as demand warrants. We have a main pipe loop covering the Seven Mile Beach and West Bay areas. We place extensions of smaller diameter pipe off our main pipe to service new developments in our service area. This system of building branches from the main pipe keeps construction costs low and allows us to provide service to new areas in a timely manner. Developers are responsible for laying the pipeline within their developments at their own cost, but in accordance with our specifications. When a development is completed, the developer then transfers operation and maintenance of the pipeline to us.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We bill our customers on a monthly basis based on metered consumption and bills are typically collected within 30 to 45 days after the billing date. Receivables not collected within 45 days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than 1% of our total annual retail sales. In addition to their past due invoice balance, customers that have had their service disconnected must pay re-connection charges.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Historically, demand on our water production and pipeline distribution has varied throughout the year. Demand depends upon various factors, most notably rainfall amounts and the number of tourists during any particular time of the year. In general, the majority of tourists come from the United States during the winter which is also the dry season in the Cayman Islands. The COVID-19 pandemic and the resulting cessation of tourism to the Cayman Islands significantly reduced demand for our water. In November 2021, the Cayman Islands government eliminated certain travel restrictions for COVID-19 vaccinated travelers that allowed tourists to enter the Cayman Islands for the first time since March 2020. We are unable at this time to determine if or when demand for our water in the Cayman Islands will return to pre-pandemic levels.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">8</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Bulk Water Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For fiscal years 2021 and 2020, our bulk water operations accounted for approximately 40% and 33%, respectively, of our consolidated revenue. These operations produce potable water from seawater and sell this water to government-owned utilities in the Cayman Islands and The Bahamas, which then distribute the water to end users.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Bulk Water Operations in the Cayman Islands</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through our wholly-owned subsidiary OC-Cayman we provide bulk water to the WAC, a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes that water to properties in Grand Cayman outside of our retail license area.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The water we provide to the WAC is produced at three seawater reverse osmosis desalination plants in Grand Cayman owned by the WAC but designed, built and operated by OC-Cayman: the North Sound, Red Gate and North Side Water Works (&#8220;NSWW&#8221;) plants, which have production capacities of approximately 1.6 million, 1.3 million and 2.4 million gallons of water per day, respectively. The plants we operate for the WAC are located on land owned by the WAC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our agreement with the WAC for the North Sound and Red Gate plants expires in 2024. Our agreement with the WAC for the NSWW plant expires in 2026.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Bulk Water Operations in The Bahamas</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We sell bulk water in The Bahamas through our majority-owned subsidiary, CW-Bahamas, to the WSC, which distributes the water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. We also sold water to a private resort on Bimini through December 18, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">We supply bulk water in The Bahamas from our Windsor and Blue Hills plants.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our water supply agreement with the WSC for our Windsor plant, which has a capacity of 2.8 million gallons per day, expires in August&#160;2033 and requires us to deliver and requires the WSC to purchase a minimum of 16.8 million gallons per week. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We supply water from the Blue Hills plant, our largest seawater reverse osmosis desalination facility with a capacity of 12.0 million gallons per day, under the terms of a water supply agreement with the WSC that expires in March&#160;2032 that requires us to deliver and requires the WSC to purchase a minimum of 63.0 million gallons of water each week.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Bimini plant supplied water to a private resort under a water supply agreement that expired on December 18,&#160;2020. This plant ceased operations on that date and the plant&#8217;s remaining assets were sold to one of our former customers in Bimini.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The high-pressure pumps at our Windsor and Blue Hills plants in The Bahamas are diesel engine-driven. Electricity for the remainder of our plant operations is supplied by Bahamas Power and Light (&#8220;BPL&#8221;). We maintain a standby generator with sufficient capacity to operate essential equipment at our Windsor and Blue Hills plants and are able to produce 100% of the production capacity with these plants during temporary interruptions in the electricity supply from BPL.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Services Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For fiscal years 2021 and 2020, our services operations accounted for approximately 21% and 18%, respectively, of our consolidated revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We provide design, engineering and construction services for desalination infrastructure projects through DesalCo, an original equipment manufacturer of seawater reverse osmosis desalination plants. DesalCo also provides management and procurement services for desalination plants and engineering services relating to municipal water production, distribution and treatment. DesalCo also conducts research and development. DesalCo sometimes tests new components and </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">9</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">technology offered by suppliers in our business and, at times, collaborates with suppliers in the development of their products. Presently, DesalCo is providing management and purchasing services to our affiliate OC-BVI in the British Virgin Islands. In the past, DesalCo has provided consulting services to the WSC and constructed and sold desalination plants to the WAC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October&#160;24, 2019, we acquired 51% of the common stock of PERC, a U.S. company headquartered in Fountain Valley, California, which commenced operations in 1998. In August 2020, we acquired an additional 10% of PERC, increasing our ownership of this subsidiary to 61%. PERC develops, builds, and sells wastewater and water reuse infrastructure. PERC also provides management services for wastewater and water reuse infrastructure under long term operations and maintenance contracts. PERC&#8217;s primary markets are California and the Southwest U.S., but it conducts business in other areas of the U.S.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Manufacturing Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For fiscal years 2021 and 2020, our manufacturing operations accounted for approximately 6% and 17%, respectively, of our consolidated revenue. Our manufacturing operations consists of Aerex, an original equipment manufacturer and service provider of a wide range of specialized and custom products applicable to desalination, municipal water treatment and industrial water and wastewater treatment. Aerex&#8217;s products include reverse osmosis desalination equipment, membrane separation equipment, filtration equipment, piping systems, vessels and custom fabricated components. Aerex&#8217;s manufacturing facility and headquarters are located in Fort Pierce, Florida and substantially all of its customers are U.S. companies. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Affiliate Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our affiliate, OC-BVI, sells water to the Government of the British Virgin Islands Water and Sewerage Department (&#8220;BVIW&amp;S&#8221;). We own 50% of the voting shares of OC-BVI and have an overall 43.53% equity interest in the profits of OC-BVI. We also own separate profit-sharing rights in OC-BVI that raise our effective interest in OC-BVI&#8217;s profits from 43.53% to approximately 45%. Sage Water Holdings (BVI) Limited (&#8220;Sage&#8221;) owns the remaining 50% of the voting shares of OC-BVI and the remaining 55% interest in its profits. Under the Articles of Association of OC-BVI, we have the right to appoint three of the six Directors of OC-BVI. Sage is entitled to appoint the remaining three Directors. In the event of a tied vote of the Directors, the President of the Caribbean Water and Wastewater Association, a regional trade association comprised primarily of government representatives, is entitled to appoint a junior director to cast a deciding vote.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through DesalCo, we provide certain engineering and administrative services to OC-BVI for a monthly fee and a bonus arrangement which provides for payment of 4% of the net operating income of OC-BVI.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We account for our investment in OC-BVI using the equity method of accounting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">OC-BVI sells bulk water to BVIW&amp;S, which distributes the water through its own pipeline system to residential, commercial and tourist properties on the islands of Tortola and Jost Van Dyke in the British Virgin Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">OC-BVI owns and operates a desalination plant located at Bar Bay, Tortola with a capacity of 720,000 gallons per day. Pursuant to a water supply agreement with the BVI government, OC-BVI is required to supply up to 600,000 gallons per day to the BVI government. This water supply agreement expires March&#160;2031.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">OC-BVI purchases electrical power to operate this plant from BVI Electric Co. and operates diesel engine driven emergency power generators which can produce 100% of the plant&#8217;s production capacity when BVI Electric Co. is unable to provide power to the plant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">OC-BVI&#8217;s plant on the island of Jost Van Dyke has a capacity of 60,000 gallons per day. This plant operates under a 10-year contract with the BVI government that expired July&#160;8, 2013. Pursuant to the contract, OC-BVI is operating the plant on a year-to-year basis until the BVI government informs OC-BVI of its intention to extend the existing contract or enter into a new agreement. We purchase electrical power to operate this plant from BVI Electric Co.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">10</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Reverse Osmosis Technology</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The conversion of seawater to potable water is called desalination. The primary method of seawater desalination used throughout the world is reverse osmosis. Reverse osmosis is a fluid separation process in which the saline water (i.e. seawater)&#160;is pressurized and the fresh water is separated from the saline water by passing through a semi-permeable membrane which rejects the salts. The saline water is first passed through a pretreatment system, which generally consists of fine filtration and treatment chemicals, if required. Pre-treatment removes suspended solids and organics which could cause fouling of the membrane surface. Next, a high-pressure pump pressurizes the saline water thus enabling approximately 40% conversion of the saline water to fresh water as it passes through the membrane, while more than 99% of the dissolved salts are rejected and remain in the now concentrated saline water. This concentrate is discharged without passing through the membrane, and the remaining hydraulic energy in the concentrate is transferred to the initial saline feed water with an energy recovery device thus reducing the total energy requirement for the reverse osmosis system. The final step is post-treatment, which consists of stabilizing the produced fresh water and/or removing undesirable dissolved gases, adjusting the pH&#160;and (if necessary) the mineral content, and providing chlorination to prepare it for distribution.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We use reverse osmosis technology to convert seawater to potable water at all of the desalination plants we construct and operate. We believe that this technology is the most effective and efficient conversion process for our markets. However, we are always seeking ways to maximize efficiencies in our current processes and investigating new, more efficient processes to convert seawater to potable water. The equipment at our desalination plants is among the most energy efficient available and we monitor and maintain the equipment in an efficient manner. As a result of our decades of experience in seawater desalination, we believe our expertise and experience with respect to the development and operation of desalination plants and similar facilities is easily transferable to locations outside of our current operating areas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Wastewater Treatment Technology</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our wastewater treatment comprises various technologies which rely on the action of microorganisms to treat wastewater. The sequential batch reactor (&#8220;SBR&#8221;) technology we typically use is a conventional, proven method which has been used to treat organic wastewater for many years. More than 1,000 SBR treatment facilities are in use in the United States ranging in size from 10,000 gallons per day to 22 million gallons per day. Increasingly, we utilize Membrane Bioreactor (&#8220;MBR&#8221;) technology which utilizes micro or ultra-filtration membranes to enhance biological wastewater treatment. The improvements offered by MBR technology include a reduced physical footprint for the facility, higher quality treated effluent and the ability to treat more challenging influent.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">PERC has improved upon the standard SBR and MBR processes and whenever possible locates its equipment in concealed areas and in aesthetically pleasing buildings that minimize foul odors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Raw Materials and Sources of Supply</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">All materials, parts and supplies essential to our business operations are obtained from multiple sources and we use the latest industry technology. Prior to our acquisition of Aerex, we did not manufacture any parts or components for equipment essential to our business. Aerex has manufactured key components for some of our desalination plants and we expect Aerex to continue to do so from time to time, however, our other businesses are not dependent on Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our access to seawater for processing into potable water is granted through our licenses and contracts with governments of the various jurisdictions in which we have our operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Seasonal Variations in Our Business</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Demand for our water in the Cayman Islands, The Bahamas and the British Virgin Islands is affected by variations in the level of tourism and rainfall. Tourism in our service areas is affected by the economies of the tourists&#8217; home countries, primarily the United States and Europe, terrorist activity and perceived threats thereof, global health concerns such as COVID-19, and increased costs of fuel and airfares. In the Cayman Islands, we normally sell more water during the first and second quarters of the year, when the number of tourists is greater and local rainfall is less than in the third and fourth quarters. The COVID-19 pandemic and the resulting cessation of tourism to the Cayman Islands significantly reduced demand for our water. In November 2021, the Cayman Islands government eliminated certain travel restrictions for </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">11</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">COVID-19 vaccinated travelers that allowed tourists to enter the Cayman Islands for the first time since March 2020. We are unable at this time to determine if or when demand for our water in the Cayman Islands will return to pre-pandemic levels. Demand in The Bahamas has not been affected to the same degree by the recent drop in tourism resulting from the COVID-19 pandemic.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The business conducted by Aerex and PERC is generally not subject to seasonal variations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Government Regulations, Custom Duties and Taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our operations and activities are subject to the governmental regulations and taxes of the countries in which we operate. The following summary of regulatory developments and legislation does not purport to describe all present and proposed regulation and legislation that may affect our businesses. Legislative or regulatory requirements currently applicable to our businesses may change in the future. Any such changes could impose new obligations on us that may adversely affect our businesses and operating results. The following paragraphs set forth some of the key governmental regulations in the jurisdictions in which we operate outside of the United States.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">The Cayman Islands</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Cayman Islands are a British Overseas Territory with a stable political climate since 1670, when the Treaty of Madrid ceded the Cayman Islands to England. The Queen of England appoints the Governor of the Cayman Islands to make laws with the advice and consent of the Parliament of the Cayman Islands. The Parliament of the Cayman Islands consists of 19 elected members and&#160;two members appointed by the Governor from the Civil Service. The Cabinet is responsible for day-to-day government operations. The Cabinet consists of the Premier and six other ministers who are chosen by the Premier from its 19 popularly elected members, and the two Civil Service members. The elected members choose from among themselves a leader, who is designated the Premier, and is in effect the leader of the elected government. The Governor has reserved powers and the United Kingdom retains full control over foreign affairs and defense. The Cayman Islands are a common law jurisdiction and have adopted a legal system similar to that of the United Kingdom.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Cayman Islands have no taxes on profits, income, distributions, capital gains or appreciation. We have exemptions from, or receive concessionary rates of customs duties on, certain capital expenditures for plant and major consumable spare parts and supplies imported into the Cayman Islands under our retail water license. We do not pay import duty or taxes on reverse osmosis membranes, electric pumps and motors, and chemicals, but we do pay duty at the rate of 10% of the cost, including insurance and transportation to the Cayman Islands, of other plant and associated materials and equipment to manufacture or supply water in the Seven Mile Beach or West Bay areas. We have been advised by the Government of the Cayman Islands that we will not receive any duty concessions in any new retail water license signed with the government.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">The Bahamas</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Commonwealth of The Bahamas is an independent nation and a constitutional parliamentary democracy with the Queen of England as the constitutional head of state. The basis of the Bahamian law and legal system is the English common law tradition with a Supreme Court, Court of Appeals, and a Magistrates court.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Under the current laws of the Commonwealth of The Bahamas, no income, corporation, capital gains or similar taxes are payable by us. We are required to pay an annual business license fee (the calculation of which is based on our preceding year&#8217;s financial statements) which to date has not been material to the results of our Bahamas operations. We are also required to pay a value added tax on materials and services we purchase.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">The British Virgin Islands</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The British Virgin Islands (the &#8220;BVI&#8221;) is a British Overseas Territory, with the Queen of England as the Head of State and Her Majesty&#8217;s representative, the Governor, responsible for external affairs, defense and internal security, the Civil Service and administration of the courts. Since 1967, the BVI has held responsibility for its own internal affairs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">12</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The BVI Constitution provides for the people of the BVI to be represented by a ministerial system of government, led by an elected Premier, a Cabinet of Ministers and the House of Assembly. The House of Assembly consists of 13 elected representatives, the Attorney General, and the Speaker.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The judicial system, based on English law, is under the direction of the Eastern Caribbean Supreme Court, which includes the High Court of Justice and the Court of Appeal. The ultimate appellate court is the Privy Council in London.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Markets and Service Areas</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We operate in the Cayman Islands, The Bahamas, the United States and the British Virgin Islands. We believe that potential new markets for us include (i)&#160;any location where a need for potable water exists and reverse osmosis desalination of seawater or brackish water is an economically viable means of meeting such need; (ii)&#160;any location with a need for the water treatment and water reuse infrastructure development and management services we provide; and (iii)&#160;those new customers that require specialized water production and treatment products and systems such as those we manufacture.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cayman Islands.</i> The Cayman Islands government, through the WAC, supplies water to the areas of Grand Cayman that are not within our licensed area, as well as to Cayman Brac. We operate all but one of the reverse osmosis desalination plants owned by the WAC on Grand Cayman and supply water under two agreements held by OC-Cayman with the WAC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">According to the most recent information published by the Economics and Statistics Office of the Cayman Islands Government, the population of the Cayman Islands was estimated in 2021 to be 69,656. According to the figures published by the Department of Tourism Statistics Information Center, in 2021 as compared to 2020, tourist air arrivals decreased by 86% to approximately 17,000 and cruise ship tourist arrivals decreased to zero.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We believe that our water sales in the Cayman Islands are more positively impacted by stay-over tourists that arrive by air than by those arriving by cruise ship, since cruise ship tourists generally only visit the island for one day or less and do not remain on the island overnight. Our water sales in the Cayman Islands are also greatly impacted by rainfall patterns and amounts on Grand Cayman. The COVID-19 pandemic and the resulting cessation of tourism to the Cayman Islands significantly reduced demand for our water. In November 2021, the Cayman Islands government eliminated certain travel restrictions for COVID-19 vaccinated travelers that allowed tourists to enter the Cayman Islands for the first time since March 2020. We are unable at this time to determine if or when demand for our water in the Cayman Islands will return to pre-pandemic levels.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">The Bahamas.</i> The Bahamas government, through the WSC, supplies all of the piped water on the island of New Providence, Bahamas, which includes Nassau, the largest city, political capital and commercial hub of The Bahamas. We supply water to the WSC through the water supply agreements for our Blue Hills and Windsor plants, which are located in Nassau. New Providence is the most populous island in The Bahamas, with more than 70% of the country&#8217;s population. A 2010 census placed the population of New Providence at approximately 246,000; more recent estimates suggest it is approximately 275,000. According to statistics published by the Bahamas Ministry of Tourism, the number of cruise ship arrival and air arrival tourists to New Providence exceeded 2.8 million and 1.3 million, respectively, in 2019 and are estimated to have dropped by more than 70% in each case in 2020 to approximately 575,000 and 335,000, respectively. In 2021, cruise ship arrivals decreased 20% to approximately 465,000 and air arrivals increased from approximately 335,000 to approximately 650,000.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">British Virgin Islands</i>. The British Virgin Islands are a British Overseas Territory and are situated east of Puerto Rico. They consist of 16 inhabited and more than 20 uninhabited islands, of which Tortola is the largest and most populated. The British Virgin Islands serve as a hub for many large yacht-chartering businesses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Competition</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cayman Islands.</i> Pursuant to our license granted by the Cayman Islands government, we have the exclusive right to provide potable, piped water within our licensed service area on Grand Cayman. The last express extension of this license expired on January&#160;31, 2018. However, we continue to operate under the terms of this license, providing water services to the level and quality specified in the 1990 license and in accordance with its legal obligations, treating those obligations set forth in </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">13</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">the license as operative notwithstanding the expiration of the express extension. Negotiations for a new license are on-going.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are the only non-government-owned public water utility on Grand Cayman. The Cayman Islands government, through the WAC, supplies water to parts of Grand Cayman located outside of our licensed service area. Although we have no competition within our exclusive retail license service area for potable water, our ability to expand our service area is at the discretion of the Cayman Islands government. We have competed with such companies as SUEZ/ Veolia, IDE Technologies and small local contractors for bulk water supply contracts with the WAC and expect to compete with these and other companies for any new water supply contracts awarded by the WAC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">The Bahamas</i>. We have competed with companies such as SUEZ/Veolia,&#160;IDE Technologies, and TSG for the contracts with The Bahamas government to build and operate seawater desalination plants in the past. We expect to compete with these companies and others for any future water supply contracts in The Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">British Virgin Islands</i>. In the British Virgin Islands, SUEZ/Veolia operates seawater reverse osmosis desalination plants in West End, Tortola, and on Virgin Gorda and generally bids against OC-BVI for projects. Seven Seas Water owns and operates a 2.75 million gallon per day desalination plant in Parakeeta Bay, Tortola for the British Virgin Islands government. We expect that OC-BVI will be required to compete against SUEZ/Veolia, Seven Seas Water and other parties for any future business opportunities that may arise in the British Virgin Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">United States</i>. Aerex competes in the highly fragmented industry for manufactured water production and treatment equipment and systems against a large number of manufacturers, fabricators and service providers, many of which have greater resources than Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Similar to Aerex, PERC competes in the highly fragmented industry for water treatment and water reuse infrastructure development and management against a large number of companies, many of which have greater resources than PERC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Environmental and Health Regulatory Matters</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cayman Islands.</i> With respect to our Cayman Islands operations, we operate our water plants in accordance with Cayman Islands laws and regulations. We are licensed by the WAC to extract seawater from wells and discharge concentrated seawater, which is a byproduct of our desalination process, into deep disposal wells.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Cayman Islands retail water license and bulk water operating contracts require our potable water to meet the World Health Organization&#8217;s Guidelines for Drinking Water Quality and contain less than 200 mg/l of total dissolved solids.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">The Bahamas and&#160;British Virgin Islands.</i> With respect to our Bahamian operations and OC-BVI&#8217;s British Virgin Islands operations, we and OC-BVI are required by our water supply contracts to take all reasonable measures to prevent pollution of the environment. We are licensed by the Bahamian government to discharge concentrated seawater, which is a by-product of our desalination process, into deep disposal wells. OC-BVI is licensed by the British Virgin Islands government to discharge concentrated seawater into the sea.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">At several of our locations, hydrogen sulfide gas is present in the seawater and we are contractually obligated to operate our plants in a manner designed to prevent the emission of airborne gas into the environment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">United States.</i> Consistent with other U.S. companies, Aerex and PERC must comply with various federal laws and regulations, such as those administered by the U.S. Environmental Protection Agency and the Occupational Safety and Health Administration, as well as state and local laws and regulations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are not aware of any existing or pending environmental legislation which may negatively affect our operations. Presently, we do not have any outstanding issues with any regulatory authority.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">14</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Human Capital</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are committed to a work environment that is welcoming, inclusive and encouraging. To achieve our plans and goals, it is imperative that we attract and retain top talent. In order to do so, we aim to have a safe and encouraging workplace, with opportunities for our employees to grow and develop professionally, supported by strong compensation, benefits, and other incentives. We have historically experienced low employee turnover.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of March&#160;24, 2022, we employed a total of 197 persons, 60 in the Cayman Islands, 116 in the United States, 19 in The Bahamas and two in The Netherlands. We also managed the five employees of OC-BVI in the British Virgin Islands. We have 14 management employees and 40 administrative and clerical employees. The remaining employees are engaged in engineering, purchasing, plant maintenance and operations, pipe laying and repair, leak detection, new customer connections, meter reading and laboratory analysis of water quality. We have no collective bargaining agreements with our employees, and none are represented by labor unions. We consider our relationships with our employees to be good.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_Hlk99018894"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">During the COVID-19 pandemic, we have implemented a number of significant safety measures based on current guidelines recommended by the Centers for Disease Control for employees who work at our facilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Available Information</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our website address is http://www.cwco.com. Information contained on our website is not incorporated by reference into this Annual Report, and you should not consider information contained on our website as part of this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have adopted a written code of conduct and ethics that applies to all of our employees and Directors, including, but not limited to, our principal executive officer, principal financial officer, and principal accounting officer or controller, or persons performing similar functions. The Code of Business Conduct and Ethics, the charters of the Audit Committee, Compensation Committee, Nominations and Corporate Governance Committee and the Corporate Governance Guidelines of our Board of Directors are available at the Investors section of our website.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">You may access, free of charge, our annual reports on Form&#160;10-K, quarterly reports on Form&#160;10-Q, and current reports on Form&#160;8-K, plus amendments to such reports as filed or furnished pursuant to Section&#160;13(a)&#160;or 15(d)&#160;of the Securities Exchange Act of 1934, as amended, on our website and on the website of the Securities and Exchange Commission (the &#8220;SEC&#8221;) as soon as reasonably practicable after we electronically file such material with, or furnish it to, the SEC. In addition, paper copies of these documents may be obtained free of charge by writing us at the following address: Consolidated Water Co. Ltd., Regatta Office Park, Windward Three, 4th Floor, West Bay Road, P.O.&#160;Box 1114, Grand Cayman, KY1-1102, Cayman Islands, Attention: Investor Relations; or by calling us at (345) 945-4277.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_26ad9cf6_0d24_4969_ab66_322236a4b440"></a><a id="ITEM1ARISKFACTORS_204204"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 1A.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">RISK FACTORS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Investing in our common stock involves risks. Before investing in our common stock, you should consider carefully the factors discussed below and the information contained in this Annual Report. Each of these risks, as well as other risks and uncertainties not presently known to us or that we currently deem immaterial, could adversely affect our business, results of operations, cash flows and financial condition, and cause the value of our common stock to decline, which may result in the loss of part, or all, of your investment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-weight:bold;">The COVID-19 pandemic will likely continue to have a material adverse impact on our financial performance and financial condition in the future, to an extent and for a period of time that cannot presently be determined.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;">The worldwide coronavirus (COVID-19) pandemic was formally recognized by the World Health Organization on March&#160;11, 2020. In response to this pandemic, the governments of the countries in which we operate - the Cayman Islands, The Bahamas, and the United States - implemented preventative measures to slow the spread of COVID-19, measures which have had profound adverse consequences for the economies of those countries. Tourism, a major economic driver for the Cayman Islands, temporarily ceased due to closing of the country to tourist arrivals by air and sea travel. In November 2021, the Cayman Islands government eliminated certain travel restrictions for COVID-19 vaccinated travelers that allowed tourists to enter the Cayman Islands for the first time since March 2020. Our retail water revenues continue </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">15</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">to be significantly lower than pre-pandemic levels. Tourists arrivals to The Bahamas by air and sea declined significantly due to the pandemic and continue to be lower than pre-pandemic numbers due to the continued reluctance of people to travel internationally. Overall economic activity in the United States has also declined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 10pt 0pt;">As a result of the impact of the COVID-19 pandemic on the economies of the countries in which we operate, we have experienced, and will continue to experience, decreases in our consolidated revenue, cash flows generated from operations, and overall liquidity as compared to comparable prior periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Furthermore, the COVID-19 pandemic is adversely impacting our customers. Such adverse impacts, should they continue for a prolonged period, could require us to reassess the expected future cash flows from our four reporting units and could require us to record impairment losses to reduce the carrying values of one or more of these reporting units due to a decline in their fair values.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 10pt 0pt;">Although we cannot presently quantify the future financial impacts of the COVID-19 pandemic on our company, we believe such impacts will likely continue to have a material adverse impact on our consolidated financial condition, results of operations, and cash flows. Given the uncertainty associated with the resolution of this pandemic, we cannot presently determine how long such adverse financial impacts may last.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Our exclusive license to provide water to retail customers in the Cayman Islands has not been expressly extended and we are presently unable to predict the outcome of our on-going negotiations relating to this license.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We sell water through our retail operations under a license issued in July&#160;1990 by the Cayman Islands government (the &#8220;1990 license&#8221;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January&#160;2018, we continue to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman Island: Seven Mile Beach and West Bay. In 2021 and 2020, we generated approximately 33% and 32%, respectively, of our consolidated revenue and 47% and 44%, respectively, of our consolidated gross profit from the retail water operations conducted under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The 1990 license was originally scheduled to expire in July&#160;2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the license expired on January&#160;31, 2018. We continue to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with our understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. We continue to pay the royalty required under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#8220;OfReg&#8221;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services, and promoting competition. OfReg, which began operations in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for the economic regulation of the water utility sector and the negotiations with us for a new retail license from the Water Authority-Cayman to OfReg in May&#160;2017. We began license negotiations with OfReg in July&#160;2017 and such negotiations are ongoing. We have been informed during our retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of our license in a manner that could significantly reduce the operating income and cash flows we have historically generated from our retail license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are presently unable to determine what impact the resolution of our retail license negotiations will have on our cash flows, financial condition or results of operations but such resolution could result in a material reduction (or the loss) of the operating income and cash flows we have historically generated from our retail operations and could require us to record impairment losses to reduce the carrying values of our retail segment assets. Such impairment losses could have a material adverse impact on our consolidated financial condition and results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">16</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Periodically, our Bahamas subsidiary experiences substantial delays in the collection of its accounts receivable. As a result, our Bahamas subsidiary could have insufficient liquidity to continue operations, and our consolidated results of operations could be materially adversely affected.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">CW-Bahamas&#8217; accounts receivable balances (which include accrued interest) due from the WSC amounted to $21.5 million as of December&#160;31, 2021. Approximately 76% of this December&#160;31, 2021 accounts receivable balance was delinquent as of that date. The delay in collecting these accounts receivable has adversely impacted the liquidity of this subsidiary.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable from the WSC. When these delays occur, we hold discussions and meetings with representatives of the WSC and The Bahamas government, and as a result, payment schedules are developed for WSC&#8217;s delinquent accounts receivable. All previous delinquent accounts receivable from the WSC, including accrued interest thereon, were eventually paid in full. Based upon this payment history, CW-Bahamas has never been required to provide an allowance for doubtful accounts for any of its accounts receivable, despite the periodic accumulation of significant delinquent balances. As of December&#160;31, 2021, we have not provided an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable from the WSC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Presently, Moody&#8217;s Investors Service and Standard &amp; Poor&#8217;s have assigned a credit rating to The Bahamas of Ba3 and B+, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If CW-Bahamas continues to be unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i)&#160;CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii)&#160;we may be required to cease the recognition of revenue on CW-Bahamas&#8217; water supply agreements with the WSC; and (iii)&#160;we may be required to provide an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable. Any of these events could have a material adverse impact on our consolidated financial condition, results of operations, and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-weight:bold;">Most of our services segment revenue is generated under short term contracts. An inability to obtain extensions of these contracts or to obtain new contracts to replace the revenue that is lost from contracts that are not extended could adversely impact our financial results.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">PERC, our principal services segment subsidiary, generates most of its revenue from contracts (&#8220;O&amp;M contracts&#8221;) to operate and maintain water treatment and reuse facilities owned by third parties. For the year ended December&#160;31,&#160;2021, we generated revenue of approximately $12.4 million under these O&amp;M contracts. PERC&#8217;s O&amp;M contracts have terms ranging from one to five years, with varying renewal options exercisable solely at the discretion of the customer. Approximately 26% of PERC&#8217;s revenue for the year ended December&#160;31,&#160;2021 was generated under O&amp;M contracts that expire at various dates through December 31, 2022. If we are unable to obtain extensions of these expiring O&amp;M contracts, or are unable to replace the revenue lost from contracts that expire with revenue from new O&amp;M contracts, our consolidated financial condition, results of operations, and cash flows would be adversely affected.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><b style="font-weight:bold;">If the future financial performance of either Aerex or PERC falls short of our most recent financial projections for these subsidiaries, we may be required to record impairment losses to reduce the carrying values of the goodwill and intangible assets of our manufacturing and/or services reporting units.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Approximately 80% of Aerex&#8217;s revenue, and 89% of Aerex&#8217;s gross profit, for the year ended December 31, 2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, we updated our projections for our manufacturing reporting unit&#8217;s future cash flows. Such projections assumed, in part, that Aerex&#8217;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, we tested our manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">17</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">a result of these impairment tests, we determined that the estimated fair value of our manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years (based upon the most recent communications from the customer such purchases may not recommence until 2023). Our updated sales estimate for this customer based on this new information was also substantially below the anticipated sales to this customer for 2022 and subsequent years that we used in the discounted cash flow projections we prepared for purposes of testing our manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020. Furthermore, Aerex&#8217;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by the continuing negative economic impacts of the COVID-19 pandemic, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials, and also adversely affected Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer and the on-going weak economic conditions, we updated our projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, we determined that the carrying value of our manufacturing reporting unit exceeded its fair value by $2.9 million, and we recorded an impairment loss to reduce our manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">The accounting estimates and assumptions we employ to estimate the fair values of our manufacturing and reporting units constitute &#8220;critical accounting estimates&#8221; for us because:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:6pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the nature of these estimates or assumptions is material due to the levels of subjectivity and judgment necessary to account for highly uncertain matters or the susceptibility of such matters to change (for example, should interest rates rise significantly in the future we would likely be required to increase the discount rate we use under the discounted cash flow method we use to estimate the fair values of our reporting units, and such increased discount rate in and of itself could decrease the estimated fair value of our reporting units under the discounted cash flow method); and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the impact of the estimates and assumptions on financial condition and results of operations is material.</span></td></tr></table><div style="margin-top:10pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">We believe the inherent uncertainties associated with the accounting estimates and assumptions we use for our estimates of our reporting units&#8217; fair values have increased due to recent, less predictable economic conditions, which have resulted in increasing raw material prices, extended and unexpected delays in the procurement and delivery of our raw materials, and have also, we believe, adversely affected our customers.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon our most recent estimation prepared as of December 31, 2021, the fair value of our manufacturing reporting unit exceeded its carrying value by only 15%. If we determine in the future that Aerex&#8217;s discounted future cash inflows will be less than our present expectations, we may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of our manufacturing reporting unit&#8217;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on our consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon our most recent estimation prepared as of December 31, 2021, the fair value of our services reporting unit exceeded its carrying value by only 15%. If we determine in the future that PERC&#8217;s discounted future cash inflows will be less than our present expectations, we may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of our services reporting unit&#8217;s goodwill of $5,320,416 and its remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on our consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"><b style="font-weight:bold;background:#ffffff;">Current economic conditions are adversely impacting the supply chain for our operations and could have a material adverse impact on our financial results.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As a result of the economic conditions resulting from the COVID-19 pandemic and the Russian invasion of Ukraine, we are experiencing issues with our supply chain for the raw materials, components, chemicals, and capital expenditures used </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">18</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">in our operations, including rapidly increasing prices, scarcities/shortages, and longer fulfillment times and unexpected delays for our orders to suppliers. Should these economic conditions and issues continue, our operations could be adversely affected, which could have a material adverse impact on our consolidated financial condition, results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">The profitability of our contracts is dependent upon our ability to accurately estimate construction and operating costs.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The cost estimates we prepare in connection with the construction and operation of our plants are subject to inherent uncertainties. Additionally, the terms of our water supply contracts may require us to guarantee the price of water on a per unit basis, subject to certain annual inflation and monthly energy cost adjustments, and to assume the risk that the costs associated with producing this water may be greater than anticipated. Because we base our contract prices in part on our estimation of future construction and operating costs, the profitability of our plants and management contracts is dependent on our ability to estimate these costs accurately. The cost of materials and services and the cost of the delivery of such services may increase significantly after we submit our bid for a plant, which could cause the gross profit for a plant to be less than we anticipated when the bid was made. The profit margins we initially expect to generate from a plant could be further reduced if future operating costs for that plant exceed our estimates of such costs. These future operating costs could be affected by a variety of factors, including lower than anticipated production or treatment efficiencies and geo-hydrological conditions at the plant site that differ materially from those we believed would exist at the time we submitted our bid. Any construction and operating costs for our plants that significantly exceed our initial estimates could adversely impact our results of operations, financial condition and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">A significant portion of our consolidated revenue is derived from our water supply agreements with the WSC. The loss of the WSC as a customer would adversely affect us.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">One bulk water customer, the WSC, accounted for approximately 36% of our consolidated revenue for the year ended December&#160;31, 2021. If, for financial or other reasons, the WSC does not comply with the terms of our water supply agreements our consolidated financial condition, results of operations, and cash flows could be materially adversely affected.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Our operations are affected by tourism and are subject to seasonal fluctuations and other factors beyond our control that could affect the demand for our water.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Demand for our water in the Cayman Islands and The Bahamas is affected by variations in the level of tourism and local weather, primarily rainfall. Tourism in our service areas is affected by the economies of the tourists&#8217; home countries, primarily the United States and Europe, terrorist activity and perceived threats thereof, global health concerns (such as COVID-19), and increased costs of fuel and airfare. In the Cayman Islands, we normally sell more water during the first and second quarters of the year, when the number of tourists is greater and local rainfall is less than in the third and fourth quarters. A downturn in tourism or greater than expected rainfall in the locations we serve could adversely impact our results of operations and cash flows. The COVID-19 pandemic and the resulting cessation of tourism to the Cayman Islands through November 2021 have significantly reduced demand for our water. We are unable at this time to determine if or when demand for our water in the Cayman Islands will return to pre-pandemic levels. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Performance shortfalls under any of our bulk supply contracts could result in penalties or cancellation of the contract.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our bulk water supply agreements require us to meet specified minimum quality, quantity and energy consumption guarantees. Membrane fouling or other technical problems could occur at any of our plants, and if we are unable to meet the guarantees due to such technical problems, we could be in default of the supply agreement and subject to various adverse consequences, including financial penalties or cancellation of the agreement.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">19</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Our operations could be harmed by natural disasters such as hurricanes, tropical storms or earthquakes.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A natural disaster could cause major damage to our equipment and properties and the properties of our customers, including the large tourist properties in our areas of operation. For example, in January 2020, Grand Cayman experienced an earthquake which damaged our storage tanks. Any future disaster could cause us to lose use of our equipment and properties and incur additional repair costs. Damage to our customers&#8217; properties and the adverse impact on tourism could result in a decrease in water demand. A natural disaster could also disrupt the delivery of equipment and supplies, including electricity, necessary to our operations. These and other possible effects of natural disasters could have a material adverse impact on our consolidated financial condition, results of operations, and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Contamination of our water may cause disruption in our services and adversely affect our revenue</b>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our feed water and/or processed water may become contaminated by natural occurrences and by inadvertent or intentional human interference, including acts of terrorism. If our feed water and/or processed water becomes contaminated, we may have to interrupt our supply of desalinated potable water until we are able to install treatment equipment or substitute the flow of water from an uncontaminated water source. In addition, we may incur significant costs in order to treat contaminated feed or processed water through expansion of our current treatment facilities, or development of new treatment methods. An inability by us to substitute feed water from an uncontaminated water source or to adequately treat the contaminated plant feed water or our processed water in a cost-effective manner may have an adverse effect on our consolidated financial condition, results of operations, and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Potential government decisions, actions and regulations could negatively affect our operations.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are subject to the local regulations of the Cayman Islands, The Bahamas and the British Virgin Islands, all of which are subject to change. Any government that regulates our operations may issue legislation or adopt new regulations, including but not limited to:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>restricting foreign ownership (by us);</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>providing for the expropriation of our assets by the government;</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>providing for nationalization of public utilities by the government;</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>providing for different water quality standards;</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>unilaterally changing or renegotiating our license and agreements;</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>restricting the transfer of U.S. currency; or</div><div style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-left:0pt;margin-top:0pt;padding-left:18pt;text-indent:-18pt;"><span style="display:inline-block;min-width:10.1pt;text-indent:0pt;white-space:nowrap;">&#9679;</span>causing currency exchange fluctuations/devaluations or enacting changes in tax laws.</div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As new laws and regulations are issued, we may be required to modify our operations and business strategy, which we may be unable to do in a cost-effective manner. Failure by us to comply with applicable regulations could result in the loss of our authorizations to operate, the assessment of penalties or fines, or otherwise may have a material adverse impact on our consolidated financial condition, results of operations and cash flows.</p><a id="_Hlk66888679"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Unforeseen environmental costs could adversely affect our business and results of operations. </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:12pt 0pt 0pt 0pt;">We are subject to various federal, state, local and foreign laws and regulations concerning environmental protection, including laws addressing water quality and contamination, the discharge of pollutants into the air and water, the management and disposal of hazardous substances and wastes, and the cleanup of contaminated sites. In particular, we face increasing complexity in our operations as we adjust to new and future requirements relating to water quality, the composition of our other products, their safe use, the energy consumption associated with our operations, and climate change laws and regulations. If we were to violate or become liable under environmental laws or if our products become non-compliant with environmental laws, we could incur substantial costs or face other sanctions, which may include restrictions on operating in certain jurisdictions. Our potential exposure includes fines and civil or criminal sanctions, third-party property damage, personal injury claims and clean-up costs. Further, liability under some environmental laws relating to contaminated sites can be imposed retroactively, on a joint and several basis, and without any finding of noncompliance or fault. The amount and timing of costs to comply with environmental laws are difficult to predict. In </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">20</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">addition, any complaints or lawsuits against us based on water quality and contamination may receive negative publicity that can damage our reputation and adversely affect our business and trading price of our common stock.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">If we fail to abide by laws, rules and regulations relating to human and workers&#8217; rights, we could be subject to suit and our reputation could be harmed, which could result in losses in our business and financial results.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:18pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are subject to various federal, state, local and foreign laws and regulations concerning human rights, including laws prohibiting discrimination, harassment, and forced or child labor, and establishing wage and hour standards. If we were to violate or become liable under human or workers&#8217; laws, we could incur substantial costs or face other sanctions. Our potential exposure includes fines and civil or criminal sanctions or liability. The amount and timing of costs to comply with human and workers&#8217; rights laws are difficult to predict. Additionally, the success of our business depends on earning and maintaining the trust and confidence of our customers, suppliers, stockholders and the communities in which we operate, our ability to compete for future opportunities, and our reputation among existing and potential clients and partners. Our reputation is critical to our business and could be impacted by events that may be difficult or impossible to control, and costly or impossible to remediate. For example, alleged or actual failures by us or our employees to comply with applicable human or workers&#8217; rights laws, rules or regulations, expectations and perceptions of our employment and environmental, social and governance practices, threatened or actual litigation against us or our employees, or the public announcement and potential publicity surrounding any of these issues, even if inaccurate, satisfactorily addressed, or if no violation or wrongdoing actually occurred, could adversely impact our reputation and relationships with customers, suppliers, stockholders and the communities in which we operate, and our ability to renew or negotiate new agreements for projects. Any such failure or reputational harm could have an adverse effect on our consolidated financial condition, results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">We rely on the efforts of key employees. Our failure to retain these employees could adversely affect our results of operations.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our success depends upon the abilities of our Executive Officers. In particular, the loss of the services of Frederick W. McTaggart, our President and Chief Executive Officer, could be detrimental to our operations and our continued success. Mr.&#160;McTaggart has an employment agreement expiring on December&#160;31, 2024. Each year, the term of this agreement may be extended for an additional year. However, we cannot guarantee that Mr.&#160;McTaggart will continue to work for us during the term of his agreement or will extend his employment agreement with us.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Our business could be adversely affected by cyber threats or other interruptions in information technology, communications networks and operations.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As part of our operations, we rely on computer systems to process transactions and communicate with our customers, suppliers and other third parties. We rely on continued and unimpeded access to secure network connections to communicate between locations and on reliable internet connections to communicate with external parties. We have physical, technical and procedural safeguards in place that are designed to protect information and protect against security and data breaches as well as fraudulent transactions and other activities. Despite these safeguards and our other security processes and protections, we cannot be assured that all our systems and processes are free from vulnerability to evolving and increasingly sophisticated cyber-attacks, to other physical breaches or to inadvertent data disclosure by third parties or by us. A significant data security breach, including misappropriation of customer, supplier or confidential employee information, could cause us to incur significant costs, which may include potential costs of investigations, legal, forensic and consulting fees and expenses, costs and diversion of management attention required for investigation, remediation and litigation, substantial repair or replacement costs. We could also experience data losses that would impair our ability to manage our business operations, including accounting and project costs, manage our water and distribution systems or process transactions and have a negative impact on our reputation and loss of confidence of our customers, suppliers and others, any of which could have a material adverse impact on our consolidated financial condition, results of operations and cash flows and our business in general.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">21</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">We are exposed to credit risk through our relationships with several customers.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are subject to credit risk posed by possible defaults in payment by our bulk water customers in the Cayman Islands, The Bahamas and the British Virgin Islands. We are also subject to credit risk posed by possible defaults in payment by our customers in the United States. Adverse economic conditions affecting, or financial difficulties of, those parties could impair their ability to pay us or cause them to delay payment. We depend on these parties to pay us on a timely basis. Our outstanding accounts receivable are not covered by collateral or credit insurance. Any delay or default in payment could adversely affect our consolidated financial condition, results of operations, and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">We are exposed to the risk of variations in currency exchange rates.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Although we report our results in United States dollars, most of our revenue is earned in other currencies. These currencies have been fixed to the United States dollar for more than 20 years. Consequently, we do not employ hedging strategies against the foreign currency exchange rate risk associated with conducting business in foreign currencies while reporting in United States dollars. If any of the existing fixed exchange rates for these other currencies becomes a floating exchange rate and any of these currencies depreciate against the U.S. dollar, our consolidated financial condition, results of operations and cash flows could be materially adversely affected.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">We may not pay dividends in the future. If dividends are paid, they may be in lesser amounts than past dividends</b>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our shareholders may receive dividends out of legally available funds if, and when, they are declared by our Board of Directors. We have paid dividends in the past but may cease to do so at any time. We may incur increased operating or development expenses or capital requirements or indebtedness in the future that may restrict our ability to pay dividends. We may also be restricted from paying dividends in the future due to restrictions imposed by applicable corporate laws, our consolidated financial condition, results of operations and cash flows, covenants contained in financing agreements, and other factors considered by our Board of Directors. We may not continue to pay dividends in the future or, if dividends are paid, they may not be in amounts comparable to past dividends.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Service of process and enforcement of legal proceedings commenced against us in the United States may be difficult to obtain.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are incorporated under the laws of the Cayman Islands and most of our assets are located outside of the United States. In addition, seven of our 17 Directors and Executive Officers reside outside the United States. As a result, it may be difficult for investors to execute service of process within the United States upon us and such other persons, or to enforce judgments obtained against such persons in United States courts, and bring any action, including actions predicated upon the civil liability provisions of the United States securities laws. In addition, it may be difficult for investors to enforce, in original actions brought in courts or jurisdictions located outside of the United States, rights predicated upon the United States securities laws.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Based on the advice of our Cayman Islands legal counsel, we believe no reciprocal statutory enforcement of foreign judgments exists between the United States and the Cayman Islands, and that foreign judgments originating from the United States are not directly enforceable in the Cayman Islands. A prevailing party in a United States proceeding against us or our Officers or Directors would have to initiate a new proceeding in the Cayman Islands using the United States judgment as evidence of the party&#8217;s claim. A prevailing party could rely on the summary judgment procedures available in the Cayman Islands, subject to available defenses in the Cayman Islands courts, including, but not limited to, the lack of competent jurisdiction in the United States courts, lack of due service of process in the United States proceeding and the possibility that enforcement or recognition of the United States judgment would be contrary to the public policy of the Cayman Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depending on the nature of damages awarded, civil liabilities under the Securities Act of 1933, as amended (or the Securities Act), or the Securities Exchange Act of 1934, as amended (or the Exchange Act), for original actions instituted outside the Cayman Islands may or may not be enforceable. For example, a United States judgment awarding remedies unobtainable in any legal action in the courts of the Cayman Islands, such as treble damages, would likely not be enforceable under any circumstances.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">22</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">The relatively low trading volume of our stock may adversely impact the ability to sell our shares.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the year ended December&#160;31, 2021, the average daily trading volume of our common stock was approximately 89,500 shares, a much lower trading volume than that of many other companies listed on the NASDAQ Global Select Market. A public trading market having the desired characteristics of depth, liquidity and orderliness depends on the presence in the market of willing buyers and sellers of our common stock at any given time. This presence in turn depends on the individual decisions of investors and general economic and market conditions over which we have no control. Due to the limited volume of trading in our common stock, an investor in our stock may have difficulty selling larger volumes of our common stock in the manner, or at the price, that might be attainable if our common stock were more actively traded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">The election process for our Board of Directors may discourage or delay a change in the composition of our Board.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have a classified Board of Directors that consists of three groups. Only one group of Directors is elected each year. The classified nature of our Board may increase the length of time necessary to change the composition of our Board, should an investor desire to do so.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_ea1311a0_8a7f_45dd_94a1_35a77ad2fa0d"></a><a id="ITEM1BUNRESOLVEDSTAFFCOMMENTS_18744"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 1B.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">UNRESOLVED STAFF COMMENTS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">None.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_2fa370a0_2ac2_4274_b2e9_d1b31d42e233"></a><a id="ITEM2PROPERTIES_34383"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 2.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">PROPERTIES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Cayman Islands Properties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Abel Castillo Water Works</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We own and operate our Abel Castillo Water Works, which is located in the Seven Mile Beach area and encompasses 12,812 square feet of buildings, two seawater reverse osmosis desalination plants with an aggregate capacity of 3.0 million gallons per day, a high service distribution pump house, warehouse space and three potable water storage tanks each with a capacity of 1.0 million gallons and one potable water storage tank with a capacity of 2.0 million gallons. The site is located on 4.2 acres, including 485 feet of waterfront.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">West Bay Plant</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We own and operate our West Bay plant located on 6.1 acres in West Bay. The plant began operating in 1995, was expanded over the years, and now has a production capacity of approximately 885,000 gallons per day. On this site we have a 2,600 square foot building which houses our water production facilities, a 2,400 square foot building which houses the potable water distribution pumps, a water quality testing laboratory, and office space and water storage capacity consisting of three potable water tanks each with a capacity of 1.0 million gallons.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Britannia Plant</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We own our Britannia seawater reverse osmosis desalination plant which is located in the Seven Mile Beach area and consists of a seawater reverse osmosis production plant with a capacity of 715,000 gallons of water per day, a potable water storage tank with a capacity of 840,000 gallons, potable water high service pumps, and various ancillary equipment. We have leased the site (comprised of 0.73 acres) and steel frame building which houses the plant for a term that ends in 2027 at an annual rent of $1.00.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Distribution System</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We own our Seven Mile Beach and West Bay potable water distribution systems in Grand Cayman which consist of potable water pipes, valves, curb stops, meter boxes, and water meters. We have the legal right to maintain (and expand or contract as necessary) these systems on public and private land within our licensed service area.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">23</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Corporate Office</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We occupy approximately 5,700 square feet of office space at the Regatta Office Park, West Bay Road, Grand Cayman, Cayman Islands under a lease that expires in April&#160;2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Bahamas Properties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Windsor plant</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Windsor water production facility, located in Nassau, New Providence, has a production capacity of 2.8 million gallons per day. The plant is powered by a combination of diesel engine-driven high-pressure pumps and electrical power purchased from Bahamas Power and Light to power all other loads in the plant. The plant is contained within a 12,000 sq. ft. steel building, and a warehouse, workshop and offices contained within a 2,600 sq. ft. concrete building. The buildings are located on land owned by the WSC and our water sales agreement gives us a license to use the land throughout the term of that agreement, which expires in 2033.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Blue Hills plant</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Blue Hills plant in Nassau, New Providence consists of two production facilities. The first facility was completed in July&#160;2006, has a production capacity of 7.2 million gallons per day, and is powered by a combination of diesel engine-driven high-pressure pumps, and electrical power purchased from the Bahamas Power and Light to power all other loads in the plant. The plant is contained within a concrete and steel building with a footprint of 16,000 square feet that also contains a warehouse, workshop and offices. It is located on land owned by the WSC and our 20-year water sales agreement gives us a license to use the land throughout the term of that agreement.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Blue Hills plant water supply agreement was amended in January&#160;2011 and extended through 2032. Pursuant to this amendment, we added a second production facility to increase the total production capacity of the Blue Hills plant to 12.0 million gallons per day. The second facility was completed in March&#160;of 2012 and is powered by a combination of diesel engine-driven high-pressure pumps and electrical power purchased from the Bahamas Power and Light to power all other loads in the plant. The second facility is contained within a steel building with a footprint of 10,640 square feet located adjacent to the initial production facility on land owned by the WSC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">U.S. Properties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Aerex owns its 30,000 square foot manufacturing facility located on 6.4 acres of land in Fort Pierce, Florida and has approximately 6,000 square feet of office space in downtown Fort Pierce under a lease that expires on June 30, 2023.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Aquilex warehouse consists of 4,100 square feet located in Sunrise, Florida that has been leased through September&#160;2025. Our Aquilex office consists of 6,500 square feet located in Coral Springs, Florida that has been leased through March 2026.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">PERC sub-leases approximately 4,100 square feet of office space in Fountain Valley, California that serves as its corporate headquarters. This sub-lease expired in August&#160;2021 and is currently on a month-to-month basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Mexico Properties</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">NSC and AdR own 20.1 hectares and 0.18 hectares of land, respectively, in Rosarito Beach, Baja California, Mexico.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">24</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_66752828_499c_4fa0_be1d_6012aaa1f150"></a><a id="_Hlk98462994"></a><a id="ITEM3LEGALPROCEEDINGS_473093"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 3.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">LEGAL PROCEEDINGS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">NSC and AdR</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Immediately following CW-Cooperatief&#8217;s acquisition of its initial 50% ownership in NSC, the remaining 50% ownership interest in NSC was held by an unrelated company, Norte Sur Agua, S. de R.L. de C.V. (&#8220;NSA&#8221;). NSA subsequently transferred ownership of half of its shares in NSC to EWG Water LLC (&#8220;EWG&#8221;) and the other half of its shares in NSC to an individual (the &#8220;individual shareholder&#8221;). In February&#160;2012, CW-Cooperatief paid $300,000 to enter into an agreement (the &#8220;Option Agreement&#8221;) that provided&#160;it with an option, exercisable through February&#160;7, 2014, to purchase the shares of NSC owned by the individual shareholder for a price of $1.0 million along with an immediate usufruct and power of attorney to vote those shares. Such shares constituted 25% of the ownership of NSC as of February&#160;2012. In May&#160;2013, NSC repaid a $5.7 million loan payable to CW-Cooperatief by issuing additional shares of its stock. As a result of this share issuance to CW-Cooperatief, we indirectly acquired 99.99% of the ownership of NSC. The Option Agreement contained an anti-dilution provision that required CW-Cooperatief to transfer or otherwise cause the individual shareholder to acquire, for a total price of $1 (regardless of their par or market value), shares in NSC of an amount sufficient to maintain the individual shareholder&#8217;s 25% ownership interest in NSC if (i)&#160;any new shares of NSC were issued subsequent to the execution of the Option Agreement (causing the individual shareholder&#8217;s 25% ownership interest in NSC to be decreased); and (ii)&#160;CW-Cooperatief did not exercise its share purchase option by February&#160;7, 2014. CW-Cooperatief exercised its option and paid the $1.0 million to the individual shareholder to purchase the Option Agreement shares in February&#160;2014.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In January&#160;2018, EWG initiated an ordinary mercantile claim against the individual shareholder, NSC and CW-Cooperatief, (with AdR being named as a third party to be called to trial) before the Tenth Civil Judge in Tijuana, Baja California for Mercantile Matters (the &#8220;Tenth Civil Judge&#8221;). In the ordinary mercantile claim, EWG challenged, among other things, the transactions contemplated under the Option Agreement, and therefore, the capital investment transactions that increased the ownership interest of CW-Cooperatief in NSC to 99.99% as a consequence of the Option Agreement. EWG requested that the court, as a preliminary matter (a)&#160;suspend the effectiveness of the challenged transactions; (b)&#160;order certain public officials in Mexico to record the pendency of the lawsuit in the public records (including a special request to register a lien over the real estate owned by NSC); (c)&#160;appoint an inspector for NSC to oversee its commercial activities; and (d)&#160;order public officials in Mexico and credit institutions abroad to refrain from authorizing or executing any legal act related with the activities of the plaintiff, the co-defendants and the third party called to trial to avoid damages to third parties, including those with whom negotiations or any form of commercial or administrative activities, or activities of any other nature related with the &#8220;Rosarito&#8221; water desalination project, are being conducted. The Tenth Civil Judge granted, ex-parte, the preliminary relief sought by EWG, which resulted in the issuance of official writs to several governmental and public entities involved with the &#8220;Rosarito&#8221; water desalination project, including the registration of the pendency of the lawsuit in certain public records.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October&#160;16, 2018, NSC was served with the ordinary mercantile claim. On November&#160;7, 2018, NSC filed a legal response to the claim, vigorously opposing the claims made by EWG. In addition to such legal response, NSC filed (i)&#160;a request to submit the claim to arbitration, based on certain provisions of the by-laws of NSC, (ii)&#160;an appeal remedy against the preliminary relief (which was resolved in December&#160;2019, and ordered the revocation of the order of the Tenth Civil Judge granting EWG the preliminary relief), and (iii)&#160;a request for the setting of a guarantee to release the preliminary relief granted in favor of EWG.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October 1, 2020 and following an order from a Federal Judge obtained by NSC, the Tenth Civil Judge resolved to (i) move the claim of EWG to arbitration, and (ii) suspend the corresponding ordinary mercantile procedure. EWG challenged such resolution, arguing that its notification was not lawful. The Tenth Civil Judge dismissed such challenge, and thereafter EWG filed a remedy against such dismissal. NSC appeared before the court to vigorously oppose such remedy, which has been dismissed. To date, the referral to arbitration has not occurred and, as such, the procedure is currently suspended.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution of the Tenth Civil Judge to move to arbitration, subparagraphs a) and b) that follow describe certain separate amparo claims, and appeal remedies arising from or relating to such ordinary mercantile claim and amparo claims, all in chronological order. Due to the global COVID-19 pandemic, most tribunals in Mexico suspended their activities intermittently since March 2020, with certain such tribunals partially restarting on different dates and with different special rules. As such, several resolutions are pending issuance.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">25</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 0pt 36pt;"><i style="font-style:italic;">a) Amparo filed by EWG against a resolution of the Tenth Civil Judge.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">In July 2021, EWG filed an amparo claim against the resolution of the Tenth Civil Judge dismissing the remedy filed by EWG against the October 1, 2020<b style="font-weight:bold;"> </b>resolution within the mentioned ordinary mercantile claim. NSC has filed before the corresponding amparo court a writ vigorously opposing this claim. Considering the foregoing, and that AdR was only named as a third party with interest, it is unnecessary for it to submit arguments against EWG in this claim. Further, CW-Cooperatief has not been notified of this amparo claim.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">Within this amparo claim, the Third District Court in Tijuana granted a suspension in favor of EWG, merely for the effect of holding in place the referral to arbitration subject matter of the October 1, 2020 resolution mentioned above. Such suspension was conditioned on the posting of a guarantee in the amount of 50,000 Mexican pesos, which has not been posted. Regardless of the effects of the suspension and the lack of the posting of a guarantee, NSC has filed an appeal remedy against its granting. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">To date, and following a final hearing that took place in March 2022, a resolution to this claim is pending issuance. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"><i style="font-style:italic;">b) Appeal filed by NSC against the suspension granted in favor of EWG.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">The appeal remedy mentioned in the second paragraph of item a) immediately above was admitted by the superior court on October 18, 2021 and is still pending to be resolved.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution to move to arbitration mentioned previously, CW-Cooperatief has not been officially served with the ordinary mercantile claim, and AdR has not been notified that it has to appear for such trial. In any event, AdR is only a named third party called to trial in this claim, and no claims have been made by EWG against AdR.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We cannot presently determine what impact the resolution of this litigation may have on our consolidated financial condition, results of operations or cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_c7e6472c_843f_4d38_b1a0_3c7b92ddb5ee"></a><a id="ITEM4MINESAFETYDISCLOSURE_339474"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 4.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">MINE SAFETY DISCLOSURE</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Not applicable.</p><a id="_8dcb9e44_5a57_40e3_8811_1be591552495"></a><a id="PARTII_440321"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">PART&#160;II</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="ITEM5MARKETFORREGISTRANTSCOMMONEQUITYREL"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 5.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS </b><b style="font-weight:bold;">AND ISSUER PURCHASES OF EQUITY SECURITIES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Market Information</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Class&#160;A common stock is listed on the NASDAQ Global Select Market and trades under the symbol &#8220;CWCO&#8221;.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">No trading market exists for our redeemable preferred stock, which are only issued to, or purchased by, long-term employees of our company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On January&#160;4, 2021, March&#160;30, 2021 and January&#160;3, 2022, we issued a total of 25,789 shares, 31,788 shares and 23,411 shares of our common stock, respectively, to Executive Officers under the 2008 Equity Incentive Plan. On November 22, 2021, we issued a total of 30,911 shares of our common stock to our Directors under the Non-Executive Directors&#8217; Share Plan in consideration for their service on our Board of Directors and the committees thereof. See &#8220;ITEM 11. EXECUTIVE COMPENSATION.&#8221;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">26</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Currently 2,023,850 Bahamian Depository Receipts (&#8220;BDRs&#8221;) that constitute ownership of 404,770 shares of our common stock are listed and traded on the Bahamian International Stock Exchange. Our common shares that underlie these BDRs are held in a custodial account in The Bahamas. The BDRs are entitled to dividend payments, when declared on our common stock in proportion to the BDRs&#8217; relative value to our common stock.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Holders</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of March&#160;24, 2022, we had 725 holders of record of our common stock.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Dividends</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Board of Directors declares and approves any and all dividends.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have paid dividends to owners of our common stock and redeemable preferred stock since we began declaring dividends in 1985. However, the payment of any future cash dividends will depend upon our earnings, financial condition, cash flows, capital requirements and other factors our Board of Directors deems relevant in determining the amount and timing of such dividends.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Listed below, for each quarter of the last two fiscal years, are the per share dividends declared on our issued and outstanding shares of common shares and redeemable preferred stock.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Second Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Fourth Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.085</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.34</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.34</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Exchange Controls and Other Limitations Affecting Security Holders</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our Company is not subject to any governmental laws, decrees or regulations in the Cayman Islands which restrict the export or import of capital, or that affect the remittance of dividends, interest or other payments to non-resident holders of our securities. The Cayman Islands does not impose any limitations on the right of non-resident owners to hold or vote our common stock. There are no exchange control restrictions in the Cayman Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The information required by Item 201(d)&#160;of Regulation S-K is provided under ITEM 12. SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS of this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_42d716a5_5b67_4a30_aede_b106854f5f38"></a><a id="ITEM6SELECTEDFINANCIALDATA_458213"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 6.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">SELECTED FINANCIAL DATA</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Not applicable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">27</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:11.5pt;"><a id="_feb73285_415a_4769_b654_8869dadb3097"></a><a id="ITEM7MANAGEMENTSDISCUSSIONANDANALYSISOFF"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 7.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND</b><b style="font-weight:bold;"> RESULTS OF OPERATIONS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Overview</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our water production operations and activities, and those of our affiliate OC-BVI, are conducted at 11 plants in three countries: the Cayman Islands, The Bahamas, and the British Virgin Islands. The following table sets forth the comparative combined production capacity of our retail and bulk segments and our affiliate as of December&#160;31 of each year.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:21.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="11" style="vertical-align:bottom;width:100%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Comparative Operations</b></p></td></tr><tr><td colspan="5" style="vertical-align:bottom;width:48.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:48.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity&#160;</b><sup style="font-size:7.5pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity&#160;</b><sup style="font-size:7.5pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9.9</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 7</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 9.9</span></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14.8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Bahamas<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(2)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 14.8</span></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">British Virgin Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.8</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">British Virgin Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 2</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 0.8</span></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 25.5</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 11</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 25.5</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">(1)&#160;In millions of gallons per day.</p><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">(2)&#160;As of December 18, 2020, we ceased operations of our water production and supply business in South Bimini, The Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our water treatment and reuse facilities are conducted at 28 plants in the United States. The following table sets forth the comparative combined estimated production capacity of our services segment as of December 31 of each year.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:21.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td colspan="11" style="vertical-align:bottom;width:100%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Comparative Operations</b></p></td></tr><tr><td colspan="5" style="vertical-align:bottom;width:48.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:48.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity&#160;</b><sup style="font-size:7.5pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Location</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Plants</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Capacity&#160;</b><sup style="font-size:7.5pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td></tr><tr><td style="vertical-align:bottom;width:21.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">USA</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 28</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 52.6</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:21.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">USA</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 27</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="white-space:pre-wrap;"> 45.0</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">(1)&#160;In estimated millions of gallons per day.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Cayman Islands</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have been operating our business on Grand Cayman since 1973 and have been using reverse osmosis technology to convert seawater to potable water since 1989. The Cayman Islands have a limited natural supply of fresh water. We have an exclusive license from the Cayman Islands government to process potable water from seawater and then sell and distribute that water by pipeline to the Seven Mile Beach and West Bay areas of Grand Cayman. This license expired in January&#160;2018 but as discussed in the following paragraph we continue to provide water under the terms of this license. Our Grand Cayman operations consist of four company-owned seawater reverse osmosis desalination plants which provide water to approximately 7,450 retail residential and commercial connections within a government licensed area and three government-owned seawater reverse osmosis plants which supply bulk water to the WAC. Our pipeline system on Grand Cayman Island covers the Seven Mile Beach and West Bay areas of Grand Cayman and consists of approximately 100 miles of potable water pipe.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our exclusive license from the Cayman Islands government was originally scheduled to expire in July&#160;2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the license expired on January&#160;31, 2018. We continue to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with our understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. We continue to pay the royalty required under the 1990 license. We have been informed during our retail license negotiations that the Cayman Islands government seeks to restructure the terms of our license in a manner that could significantly reduce the operating income and cash flows we have historically generated from our retail license. Our retail license negotiations have also been impacted by the passage of new legislation and the establishment of a new water regulatory body in the Cayman Islands. See further discussion of this matter at ITEM 7. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">28</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">CONDITION AND RESULTS OF OPERATIONS - Material Commitments, Expenditures and Contingencies - <i style="font-style:italic;">Cayman Water Retail License</i>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">The Bahamas</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">CW-Bahamas produces potable water from two seawater reverse osmosis desalination plants. The Windsor plant and the Blue Hills plant are located in Nassau, New Providence and have a total installed capacity of 14.8 million gallons per day. CW-Bahamas supplies water from these plants to the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;) under long-term supply agreements. During 2021, we supplied approximately 4.4 billion gallons (2020: 4.2 billion gallons) of water to the WSC from these plants. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable. Representatives of the Bahamas government have informed us that their delays in paying our accounts receivables did/do not reflect any type of dispute with us with respect to the amounts owed. To date, we have not been required to provide an allowance for any delinquent CW-Bahamas accounts receivable as such amounts were eventually paid in full. Based upon our experience, we believe that the present accounts receivable from the WSC are fully collectible and therefore have not provided any allowance for possible non-payment of these receivables. Such accounts receivable balances due from The Bahamas government amounted to $21.5 million as of December&#160;31, 2021. See further discussion of this matter at ITEM 7. MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS - LIQUIDITY AND CAPITAL RESOURCES - CW Bahamas Liquidity.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 10pt 0pt;"><b style="font-weight:bold;">Critical Accounting Estimates</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenue and expenses during the reporting period. Our actual results could differ significantly from such estimates and assumptions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Certain of our accounting estimates or assumptions constitute &#8220;critical accounting estimates&#8221; for us because:</p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:6pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the nature of these estimates or assumptions is material due to the levels of subjectivity and judgment necessary to account for highly uncertain matters or the susceptibility of such matters to change; and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">the impact of the estimates and assumptions on financial condition and results of operations is material.</span></td></tr></table><div style="margin-top:10pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Our critical accounting estimates relate to the valuations of our (i)&#160;goodwill and intangible assets; and (ii)&#160;long-lived assets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Goodwill and intangible assets</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. We evaluate the possible impairment of goodwill annually as part of our reporting process for the fourth quarter of each fiscal year. Management identifies our reporting units, which consist of our retail, bulk, services and manufacturing operations, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. We determine the fair value of each reporting unit and compare these fair values to the carrying amounts of the reporting units. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the years ended December&#160;31, 2021 and 2020, we estimated the fair value of our reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">29</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We also estimated the fair value of each of our reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We weighted the fair values estimated for each of our reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings we applied to each method for the years ended December&#160;31, 2021 and 2020 were 80% to the discounted cash flow method and 20% to the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair values we estimated for our retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by 32%, 51%, 15% and 15%, respectively, as of December&#160;31, 2021. The fair values we estimated for our retail, bulk, and services reporting units exceeded their carrying amounts by 101%, 49%, and 17%, respectively, as of December&#160;31, 2020. The significant decline in excess of fair value over carrying value for our retail unit from 2020 to 2021 reflects new estimates for future capital expenditures for our Cayman Water operations. While the fair value we estimated for our manufacturing reporting unit exceeded its carrying value by 31% as of December 31, 2020, due to new information we obtained in 2021, we were required to record an impairment loss for our manufacturing unit&#8217;s goodwill in 2021, as discussed in paragraphs that follow.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In February&#160;2016, we acquired a 51% ownership interest in Aerex. In connection with this acquisition, we recorded goodwill of $8,035,211. Aerex&#8217;s actual results of operations for the six months in 2016 following the acquisition fell significantly short of the projected results that were included in the cash flow projections we utilized to determine the purchase price for Aerex and the fair values of its assets and liabilities. Due to this shortfall in Aerex&#8217;s results of operations, we tested our manufacturing reporting unit&#8217;s goodwill for possible impairment as of September&#160;30, 2016 by estimating its fair value using the discounted cash flow method. As a result of this impairment testing, we determined that the carrying value of our manufacturing reporting unit&#8217;s goodwill exceeded its fair value and recorded an impairment loss of $1,750,000 for the three months ended September&#160;30, 2016 to reduce the carrying value of this goodwill to $6,285,211. As part of our annual impairment testing of goodwill performed during the fourth quarter, in 2017 we updated our projections for Aerex&#8217;s future cash flows, determined that the carrying value of our manufacturing reporting unit&#8217;s goodwill exceeded its fair value, and recorded an impairment loss of $1,400,000 for the three months ended December&#160;31, 2017 to further reduce the carrying value of this goodwill to $4,885,211.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Approximately 80% of Aerex&#8217;s revenue, and 89% of Aerex&#8217;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, we updated our projections for our manufacturing reporting unit&#8217;s future cash flows. Such projections assumed, in part, that Aerex&#8217;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, we tested our manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As a result of these impairment tests, we determined that the estimated fair value of our manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years (based upon the most recent communications from the customer, we now expect such purchases to recommence in late 2022 or early 2023). Our updated sales estimate for this customer based on this new information was substantially below the sales we anticipated to this customer for 2022 and subsequent years that we used in the discounted cash flow projections </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">30</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">we prepared for purposes of testing our manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020. Aerex&#8217;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by the continuing negative economic impacts of the COVID-19 pandemic, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, we believe, also adversely affected the overall financial condition of Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer, and present weak economic conditions that we believe will continue into 2022, we updated our projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, we determined that the carrying value of our manufacturing reporting unit exceeded its fair value by $2.9 million, and we recorded an impairment loss to reduce our manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">We believe the inherent uncertainties associated with the accounting estimates and assumptions we use for our estimates of our reporting units&#8217; fair values have increased due to recent, less predictable economic conditions, which have resulted in increasing raw material prices, extended and unexpected delays in the procurement and delivery of our raw materials, and have also, we believe, adversely affected our customers. Should interest rates rise significantly in the future we would likely be required to increase the discount rate we use under the discounted cash flow method we use to estimate the fair values of our reporting units, and such increased discount rate in and of itself could decrease the estimated fair value of our reporting units under the discounted cash flow method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon our most recent estimation prepared as of December 31, 2021, the fair value of our manufacturing reporting unit exceeded its carrying value by only 15%. If we determine in the future that Aerex&#8217;s discounted future cash inflows will be less than our present expectations, we may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of our manufacturing reporting unit&#8217;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on our consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon our most recent estimation prepared as of December 31, 2021, the fair value of our services reporting unit exceeded its carrying value by only 15%. If we determine in the future that PERC&#8217;s discounted future cash inflows will be less than our present expectations, we may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of our services reporting unit&#8217;s goodwill of $5,320,416 and its remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on our consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Long-lived assets</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">We review the carrying amounts of our long-lived assets for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, we recognize an impairment loss only if its carrying amount is not recoverable through its undiscounted cash flows and measure the impairment loss based on the difference between the carrying amount and fair value.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">On June 29, 2020, our Mexico subsidiary, AdR, received a letter from the State of Baja California (the &#8220;State&#8221;) terminating AdR&#8217;s contract with the State involving the construction and operation of a desalination plant in Rosarito California and accompanying aqueduct to deliver the water produced by this plant to the Mexican public water system. As a result of the cancellation of this contract, we recorded an impairment loss for rights of way acquired for the contract&#8217;s proposed aqueduct of approximately ($3.0 million) in 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through our former subsidiary, PT Consolidated Water Bali (&#8220;CW-Bali&#8221;), we built and operated a seawater reverse osmosis plant with a productive capacity of approximately 264,000 gallons per day located in Nusa Dua, one of the primary tourist areas of Bali,&#160;Indonesia. We recorded operating losses for CW-Bali as the sales volumes for its plant were insufficient to cover its operating costs. In 2017 and 2016 we determined, based upon probability-weighted scenarios for </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">31</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">CW-Bali&#8217;s future undiscounted cash flows, that the carrying values of CW-Bali&#8217;s long-lived assets and our investment in CW-Bali were not recoverable. Consequently, we recorded impairment losses of ($1.6 million) and ($2.0 million), in 2017 and 2016, respectively, to reduce the carrying values of these assets to their fair values.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Results of Operations</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following discussion and analysis of our results of operations should be read in conjunction with our audited consolidated financial statements and accompanying notes included under Part&#160;II,&#160;ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA, of this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Year Ended December&#160;31, 2021 Compared to Year Ended December&#160;31, 2020</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Discontinued Operations &#8211; Mexico Project Development</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In 2010, we began the pursuit, through our Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), and our Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), of a project (the &#8220;Project&#8221;) that encompassed the construction, operation and minority ownership of a 100 million gallon per day seawater reverse osmosis desalination plant to be located in northern Baja California, Mexico and accompanying pipelines to deliver water to the Mexican potable water system.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through a series of transactions that began in 2012, NSC purchased 20.1 hectares of land for approximately $21.1 million on which the proposed Project&#8217;s plant was to be constructed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Following an assessment by the State of Baja, California (the &#8220;State&#8221;) of the need for such a desalination plant and the passage of enabling legislation in November 2015, the State officially commenced the required public tender for the Project. A consortium (the &#8220;Consortium&#8221;) comprised of NSC, Suez Medio Ambiente M&#233;xico, S.A. de C.V. (&#8220;Suez MA&#8221;), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (&#8220;NuWater&#8221;) submitted its tender for the Project in April 2016 and in June 2016, the State designated the Consortium as the winner of the tender process for the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;) to pursue completion of the Project and executed a shareholders agreement for AdR agreeing among other things that (i) AdR would purchase the land and other Project assets from NSC on the date that the Project begins commercial operation and (ii) AdR would enter into a Management and Technical Services Agreement with NSC effective on the first day that the Project begins commercial operation. NSC initially owned 99.6% of the equity of AdR. In February 2018, we acquired the remaining 0.4% ownership in AdR from NuWater.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On August 22, 2016, the Public Private Partnership Agreement for the Project (the &#8220;APP Contract&#8221;) was executed between AdR, the State Water Commission of Baja California (&#8220;CEA&#8221;), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (&#8220;CESPT&#8221;). The APP Contract required AdR to design, construct, finance and operate a seawater reverse osmosis desalination plant (and accompanying aqueduct) with a capacity of up to 100 million gallons per day in two phases: the first with a capacity of 50 million gallons per day and an aqueduct to the Mexican potable water system in Tijuana, Baja California and the second phase with a capacity of 50 million gallons per day. The first phase was to be operational within 36 months of commencing construction and the second phase was to be operational by July 2024. The APP Contract further required AdR to operate and maintain the plant and aqueduct for a period of 37 years starting from the commencement of operation of the first phase. At the end of the operating period, ownership of the plant and aqueduct would have been transferred to CEA. The APP Contract was subsequently amended by the parties in June 2018 to increase the scope of Phase 1 and to allow for changes in the water tariff due to the changes in the exchange rate for the peso, interest rates and construction costs that had and would occur from the date the APP Contract was signed to the date construction commenced.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On June 29, 2020, AdR received a letter (the &#8220;Letter&#8221;) from the Director General of CEA and the Director General of CESPT terminating the APP Contract. The Letter requested that AdR provide an inventory of the assets that currently comprise the &#8220;Project Works&#8221; (as defined in the APP Contract) for the purpose of acknowledging and paying the non-recoverable expenses made by AdR in connection with the Project, with such reimbursement to be calculated in accordance with the terms of the APP Contract. The applicable law requires this list of non-recoverable expenses made by AdR in </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">32</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">connection with the Project be submitted to CEA and CESPT within 20 business days from the date of receipt of the Letter. AdR initiated an&#160;amparo&#160;claim before a federal district court in Tijuana, Baja California, to challenge the provision of the applicable law requiring submittal of the list of non-recoverable expenses within the&#160;20&#160;business days term, as AdR considered such term to be unreasonably short due to the magnitude of the Project and the scope of supporting documentation required to be provided with respect to the non-recoverable expenses. AdR obtained an initial provisional suspension of the lapsing of such 20-day term from the court, and on August 10, 2020 the court made such suspension definitive until the completion of the amparo trial. As such, the&#160;20-day&#160;term for filing the list of non-recoverable expenses was suspended. Therefore, on August 28, 2020, AdR submitted their list of non-recoverable expenses, including those of NSC, to CEA and CESPT which was comprised of 51,144,525 United States dollars and an additional 137,333,114 Mexican pesos. In February 2021, AdR withdrew this amparo claim, and such withdrawal was accepted by the federal district court in Tijuana. To date, AdR has not received a response from CEA or CESPT to its submission of non-recoverable expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We believe CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the <i style="font-style:italic;">Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States </i>entered into force as of October 1, 1999 (the &#8220;Treaty&#8221;). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State&#8217;s termination of the APP Contract constituted a breach by Mexico of its international obligations under the Treaty, entitling CW-Cooperatief to full reparation, including monetary damages. This letter invites Mexico to seek a resolution of this investment dispute through consultation and negotiation, but states that if the dispute cannot be resolved in this manner, CW-Cooperatief elects to refer the dispute to the International Centre for the Settlement of International Disputes for arbitration, as provided for in the Treaty. On June 29, 2021, the Mexican Ministry of Economy responded to CW-Cooperatief&#8217;s letter and proposed to hold a consultation meeting. Two such meetings were held on July 9, 2021 and August 2, 2021 on a confidential basis, without a resolution of our investment dispute.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">&#8203;On February 9, 2022, CW-Cooperatief, filed a Request for Arbitration with the International Centre for Settlement of International Disputes requesting that the United Mexican States pay CW-Cooperatief damages in excess of US$51 million plus MXN$137 million (with the exact amount to be quantified in the proceedings), plus fees, costs and pre- and post-award interest.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;">CW-Cooperatief intends to pursue vigorously the relief sought in the arbitration, in addition to pursuing all other legal remedies and courses of action available under the operative contracts and applicable law with respect to their rights, damages, fees and expenses. We cannot provide any assurances that CW Cooperatief will be able to obtain the relief sought in the arbitration, and we will incur legal and other arbitration-related expenses that we expect will be material to our consolidated results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We cannot provide any assurances that we will be able to obtain reimbursement for any expenses or investments made with respect to the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As a result of the cancellation of the APP Contract, in 2020 we discontinued all development activities associated with the Project and commenced active marketing efforts to sell the land NSC purchased for the Project. Accordingly, the assets and liabilities of CW-Cooperatief, NSC and AdR, as well as all Project development expenses, the impairment loss of approximately ($3.0 million) recorded during 2020 for Project assets, and the costs for our legal and administrative activities to pursue reimbursement from the State of Baja California following the cancellation of the APP Contract, have been reclassified from the services segment to discontinued operations in the accompanying consolidated financial statements. Our net losses from discontinued operations for the years ended December 31, 2021 and 2020 were ($2,574,079) and ($4,902,243), respectively. Our net loss from discontinued operations for 2021 and 2020 also consists of &#160;provisions of $963,540 and $316,217, respectively, for potentially uncollectible value added taxes paid that are reimbursable/receivable from the Mexican federal government. We recorded the 2021 provision as a result of the Mexican government&#8217;s rejection of our most recent request for repayment of these value added taxes paid. We believe we are legally entitled to be repaid for these value added taxes and have engaged a firm to assist us in collecting the total amount of approximately $1.6 million from the Mexican government. However, we ultimately may not be able to obtain such payment from the Mexican government and therefore may be required in the future to record another provision to write off the remaining balance of these receivables, which amounted to approximately $340,910 as of December 31, 2021.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">33</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Consolidated Results</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Including discontinued operations, net income attributable to Consolidated Water Co. Ltd. stockholders for 2021 was $875,579 ($0.06 per share on a fully diluted basis), as compared to $3,711,528 ($0.24 per share on a fully diluted basis) for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following discussion and analysis of our consolidated results of operations and results of operations by segment for the year ended December 31,&#160;2021 as compared to the year ended December 31,&#160;2020 relates only to our continuing operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders for 2021 was $3,449,658 ($0.23 per share on a fully diluted basis), as compared to $8,613,771 ($0.56 per share on a fully diluted basis) for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Total revenue for 2021 decreased to $66,863,502 from $72,628,126 in 2020, as the manufacturing segment experienced a significant revenue decline, which was not fully offset by revenue increases in our other segments. Gross profit for 2021 was $23,507,191 (35% of total revenue) as compared to $26,768,455 (37% of total revenue) for 2020. For further discussion of revenue and gross profit see the &#8220;Results by Segment&#8221; discussion and analysis that follows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">General and administrative expenses (&#8220;G&amp;A expenses&#8221;) on a consolidated basis remained relatively consistent at $18,350,359 for 2021 as compared to $18,434,898 for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Other income, net, increased to $1,623,595 in 2021, as compared to $1,082,946 in 2020. This increase is primarily attributable to a gain of $818,000 in 2021 on the net put/call options associated with the acquisition of PERC as a result of the December 31, 2021 revaluation of these options. This net gain was offset by a reduction in income generated from our investment in the profit-sharing plan of OC-BVI and our equity in the earnings of OC-BVI, which in the aggregate were approximately $428,000 higher in 2020 than in 2021. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The COVID-19 pandemic had a material adverse impact on our consolidated results of operations for the years ended December 31, 2021 and 2020, and we believe the COVID-19 pandemic will continue to adversely impact our results of operations in future periods. See further discussion herein and at &#8220;LIQUIDITY AND CAPITAL RESOURCES &#8211; Material Commitments, Expenditures and Contingencies &#8211; COVID-19.&#8221;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Results by Segment</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Retail Segment:</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The retail segment incurred a net loss from operations of ($2,044,094) as compared to a loss from operations of ($1,004,924) for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue generated by our retail water operations decreased to $22,104,953 in 2021 from $22,952,370 in 2020. The reduction in revenue reflects a 4% decrease in the volume of water sold by Cayman Water due to the closing of Grand Cayman Island to all tourist travel in March 2020 in response to the COVID-19 pandemic.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Retail segment gross profit decreased to $11,044,016 (50% of retail revenue) for 2021 as compared to $11,871,556 (52% of retail revenue) for 2020. This decrease in gross profit dollars is attributable to the revenue decline. The revenue decline also resulted in lower gross profit as a percentage of revenue for 2021 due to the resulting greater relative impact of fixed production and distribution costs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Consistent with prior periods, we record all non-direct G&amp;A expenses in our retail segment and do not allocate any of these non-direct costs to our other three business segments. Retail G&amp;A expenses decreased to $12,841,259 for 2021 as compared to $12,879,445 for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">34</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Bulk Segment:</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The bulk segment contributed $7,677,362 and $6,100,134 to our income from operations for 2021 and 2020, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Bulk segment revenue was $26,800,869 and $24,312,546 for 2021 and 2020, respectively. The increase in bulk segment revenue from 2020 to 2021 is primarily attributable to an increase in energy costs for CW-Bahamas, which increased the energy pass-through component of CW-Bahamas&#8217; rates and, to a lesser extent, a 5% increase in the volume of water sold by CW-Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Gross profit for the bulk segment was $9,041,597 (34% of bulk segment revenue) and $7,352,983 (30% of bulk segment revenue) for 2021 and 2020, respectively. Gross profit in dollars and as a percentage of revenue increased in 2021 as compared to 2020 principally due to the increase in revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Bulk segment G&amp;A expenses remained relatively consistent at $1,365,735 for 2021 as compared to $1,260,062 for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Services Segment:</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The services segment contributed $414,394 and $408,529 to our income from operations for 2021 and 2020, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Services segment revenue increased to $13,884,857 for 2021 compared to $12,937,859 for 2020 due to an increase of approximately $3.2 million from operating and maintenance contracts attributable to new contracts, which served to more than offset a decline in plant construction revenue.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The gross profit for the services segment was $3,177,614 (23% of services segment revenue) in 2021 as compared to $3,239,645 (25% of services revenue) for 2020. The slight decrease in gross profit as a percentage of revenue reflects a shift in the contract mix.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">G&amp;A expenses for the services segment remained consistent at $2,762,735 for 2021 as compared to $2,834,917 for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Manufacturing Segment:</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The manufacturing segment incurred a loss of ($4,036,666) for 2021 as compared to generating an income from operations of $2,843,815 for 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Approximately 80% of our manufacturing segment revenue and 89% of our manufacturing segment gross profit for 2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it presently expected to recommence its purchases from Aerex beginning with the first quarter of 2022. In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to both the amounts it had purchased from Aerex in 2020 and prior years and the amounts we had anticipated the customer would purchase (based upon the most recent communications from the customer, we now expect such purchases to recommence in late 2022 or early 2023). Our efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by the continuing negative economic conditions, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, we believe, also adversely affected the overall financial condition of Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer, and present weak economic conditions that we believe will continue into 2022, we tested the carrying value of our manufacturing reporting unit for possible impairment as of June 30, 2021. Based upon this testing, we determined that the carrying value of our manufacturing reporting unit exceeded its fair value by $2.9 million, and we recorded an impairment loss to reduce our manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">35</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Manufacturing segment revenue was $4,072,823 and $12,425,351 for 2021 and 2020, respectively. Manufacturing segment revenue decreased from 2020 to 2021 due to the loss of orders from Aerex&#8217;s former largest customer, and to date we have not been successful in replacing all of this lost revenue. Manufacturing revenue under certain contracts has been deferred due to significant product delivery delays requested by customers as well as continuing delayed shipments of raw materials and supplies to Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Manufacturing segment gross profit was $243,964 (6% of manufacturing segment revenue) and $4,304,271 (35% of manufacturing segment revenue) for 2021 and 2020, respectively. The decrease in manufacturing segment gross profit in dollars reflects the decrease in revenue. Gross profit as a percentage of revenue declined due to the greater impact of fixed factory overhead on this measure resulting from the revenue decrease, as we elected to continue the employment of all of our manufacturing personnel during 2021 despite the decrease in production activity.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">G&amp;A expenses for the manufacturing segment dropped to $1,380,630 for 2021 as compared to $1,460,474 for 2020 as a result of a decrease of $115,000 in the amortization expenses resulting from the completion of the amortization period for certain intangible assets recorded in connection with the acquisition of Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As noted previously, the results of our manufacturing segment have been adversely affected by recent economic conditions which have resulted in increasing raw materials prices, extended and unexpected delays in the procurement and delivery of raw materials and, we believe, have also adversely affected its existing and prospective customer base. The current economic conditions could continue indefinitely (or further deteriorate) and therefore could continue to adversely impact the future results of our manufacturing segment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">FINANCIAL CONDITION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The significant changes in the components of our consolidated balance sheet as of December&#160;31, 2021 as compared to December&#160;31, 2020 (other than the change in our cash and cash equivalents, which is discussed later in &#8220;LIQUIDITY AND CAPITAL RESOURCES&#8221;) and the reasons for these changes are discussed in the following paragraphs.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Accounts receivable increased by approximately $5.9 million. This net increase reflects an increase in CW-Bahamas&#8217; accounts receivable of approximately $4.7 million from the WSC and an increase of approximately $770,000 of manufacturing accounts receivable due to timing.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">Current inventory decreased by approximately $709,000 primarily due to a decline in orders for Aerex.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;background:#ffffff;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">Property, plant and equipment, net decreased by approximately $4.7 million due to scheduled depreciation of fixed assets.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">Operating lease right-of-use assets increased by approximately $1.3 million, with a related increase in operating lease liabilities of approximately $1.3 million, primarily due to a new office </span>lease<span style="background:#ffffff;"> for Aquilex that began in March 2021.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">LIQUIDITY AND CAPITAL RESOURCES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Liquidity Position</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our projected liquidity requirements for 2022 include capital expenditures for our existing operations of approximately $9.5 million, which includes $5.6 million to be incurred in 2022 for the replacement of the 26-year old West Bay seawater desalination plant in Grand Cayman which is expected to be completed in 2023 at a total cost of $7.2 million, and approximately $1.3 million for dividends payable. Our liquidity requirements may also include future quarterly dividends, if such dividends are declared by our Board. Our dividend payments amounted to approximately $5.8 million for the year ended December&#160;31, 2021 and approximately $5.1 million for the year ended December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December&#160;31, 2021, we had cash and cash equivalents of $40.4 million and working capital of $69.2 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">With the exception of the liquidity matter relating to CW-Bahamas that is discussed in the paragraphs that follow, we are not presently aware of anything that would lead us to believe that we will not have sufficient liquidity to meet our needs.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">36</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">CW-Bahamas Liquidity</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">CW-Bahamas&#8217; accounts receivable balance (which include accrued interest) due from the WSC amounted to $21.5 million as of December&#160;31, 2021. Approximately 76% of the December&#160;31, 2021 accounts receivable balance was delinquent as of that date. The delay in collecting these accounts receivable has adversely impacted the liquidity of this subsidiary.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable from the WSC. When these delays occur, we hold discussions and meetings with representatives of the WSC and The Bahamas government, and as a result, payment schedules are developed for WSC&#8217;s delinquent accounts receivable. Our most recent such discussions occurred during the week of March 7, 2022. All previous delinquent accounts receivable from the WSC, including accrued interest thereon, were eventually paid in full. Based upon this payment history, CW-Bahamas has never been required to provide an allowance for doubtful accounts for any of its accounts receivable, despite the periodic accumulation of significant delinquent balances. As of December&#160;31, 2021, we have not provided an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable from the WSC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In February 2022, we received correspondence from the Ministry of Finance of the Government of the Bahamas that set forth a payment schedule providing for the gradual reduction over the course of 2022 of the CW-Bahamas&#39; delinquent accounts receivable due from the WSC. Such correspondence also indicated that the Government intends to return all of CW-Bahamas&#8217; accounts receivable from the WSC to current status.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of February&#160;28, 2022, CW-Bahamas&#8217; accounts receivable from the WSC totaled $26.4 million. During the first three weeks of March 2022, we received $7.6 million in payments on these accounts receivable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If CW-Bahamas continues to be unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i)&#160;CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii)&#160;we may be required to cease the recognition of revenue on CW-Bahamas&#8217; water supply agreements with the WSC; and (iii)&#160;we may be required to provide an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable. Any of these events could have a material adverse impact on our <span style="background:#ffffff;">consolidated financial condition, results of operations, and cash flows</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Discussion of Cash Flows for the Year Ended December&#160;31, 2021</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our cash and cash equivalents decreased to $40,358,059 as of December&#160;31, 2021 from $43,794,150 as of December&#160;31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cash Flows from Operating Activities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Net cash provided by our operating activities was $6,966,310. This net cash provided reflects net income generated for the year ended December&#160;31, 2021 from continuing and discontinued operations of $1,508,494 as adjusted for (i)&#160;various items included in the determination of net income that do not affect cash flows during the year; and (ii)&#160;changes in the other components of working capital. The more significant of such items and changes in working capital components included depreciation and amortization of $6,921,233, an impairment loss for Aerex of $2,900,000, a $963,540 provision for potentially uncollectible value added tax receivables, and an increase in accounts receivable of $5,878,771 (principally attributable to CW-Bahamas).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cash Flows from Investing Activities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_Hlk99025605"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Net cash used by our investing activities was $3,944,452. Cash used was primarily to purchase a certificate of deposit of $2,500,000 and for additions to property, plant and equipment and construction in progress of $1,490,012.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">Cash Flows from Financing Activities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Net cash used by our financing activities was $5,862,031, almost all of which related to the payment of dividends.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">37</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Material Commitments, Expenditures and Contingencies</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;background:#ffffff;margin:0pt;"><i style="font-style:italic;">COVID-19</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">The worldwide coronavirus (COVID-19) pandemic, which was formally recognized by the World Health Organization on March&#160;11, 2020, has had a profound negative impact on the economies of the countries in which we operate. Consequently, the COVID-19 pandemic has had, and will continue to have, a material adverse impact on our consolidated financial condition, results of operations, and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">A discussion of the current effects of the COVID-19 pandemic on each of our operating subsidiaries is provided in the following paragraphs. However, as the worldwide impact of COVID-19 continues to develop and expand, its future effects on our company could differ materially from the information we are providing herein.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt 0pt 10pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cayman Water</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As preventative measures to combat the possible spread of COVID-19, the Cabinet of the Cayman Islands (&#8220;the Cabinet&#8221;) closed all of Cayman Islands&#8217; seaports to international passenger arrivals effective March&#160;13, 2020; and&#160;closed all Cayman Islands airports to international passenger arrivals effective March&#160;22, 2020. Effective March&#160;28, 2020, the Cabinet and Cayman Islands law enforcement enacted various &#8216;stay-at-home&#8217; regulations and curfews, which closed all businesses not deemed essential by the government and required citizens to stay at home unless they were purchasing necessities or engaged in an essential errand. In May&#160;2020, the Cabinet started the phased relaxation of the shelter-in-place regulations and on October 1, 2020, the Cayman Islands reopened its borders for residents or individuals who own property in the Cayman Islands that provide evidence of a negative COVID-19 test performed within three days prior to arrival in the Cayman Islands and agree to remain in quarantine for 14 days after arrival. In July 2021, this quarantine period was reduced to five days for fully vaccinated travelers who can provide proof of vaccination from Cayman Islands government approved sources.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In November 2021, the Cayman Islands began allowing vaccinated travelers to visit the islands without the need to quarantine. However, the testing requirements upon arrival on the islands, and the fact that families with unvaccinated children were still required to quarantine, continued to restrict the number of overseas visitors. Recently, the Cayman Islands began allowing children to take the vaccination status of their parents and eliminated the testing requirements upon arrival for vaccinated visitors. This easing of restrictions has positively impacted tourism to the Cayman Islands. However, tourism to the Cayman Islands continues to be well below pre-COVID-19 levels. We expect that our retail segment revenue and cash flows will continue to be materially adversely impacted until such time as tourism and the economy in the Cayman Islands fully recover from the impact and effects of the COVID-19 pandemic.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">Cayman Water&#8217;s operations have been designated as essential services by the Cayman Islands government. Presently, the day-to-day operations of Cayman Water&#8217;s water production facilities and distribution network have not been materially impeded by the COVID-19 pandemic &#8211; we continue to produce and supply water to meet the demand for water in our retail license area. We believe Cayman Water has adequate spare parts and supplies in stock to continue normal operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;background:#ffffff;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">OC-Cayman</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">Although it operates on Grand Cayman - and therefore is also affected by the preventative measures enacted by government that have been discussed previously - OC-Cayman sells water on a bulk basis to the WAC, which in turn provides this water to areas of Grand Cayman that are more residential, and less tourist related, than the license area served by Cayman Water. The monthly amounts OC-Cayman charges the WAC for water supplied under its water supply agreements consist of fixed amounts that constitute most of the amounts charged, and lesser amounts that vary with the volume of water supplied. Therefore, unlike Cayman Water, OC-Cayman&#8217;s revenue is not as directly affected by tourism on Grand Cayman and, due to the structure of the underlying water supply agreements, is not as acutely sensitive to declines in water demand.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;">OC-Cayman&#8217;s operations have been designated as essential services by the Cayman Islands government. Presently, OC-Cayman&#8217;s day-to-day operations have not been materially impeded by the COVID-19 pandemic &#8211; we continue to produce and supply water to meet the requirements of our two water supply agreements with the WAC. We believe OC-Cayman has adequate spare parts and supplies in stock to continue normal operations. However, OC-Cayman&#8217;s operations could </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">38</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">be adversely affected should a significant number of its operations personnel be required to miss work due to illness or a requirement to quarantine.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;background:#ffffff;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">CW-Bahamas</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">The government of The Bahamas enacted Emergency Powers Regulations which became effective March&#160;18, 2020 in an effort to combat the spread of COVID-19. Initially, these regulations closed all businesses not deemed essential by the government, encouraged the employees of non-essential businesses to work remotely and imposed 24-hour shelter-in-place curfew on all residents of The Bahamas other than those engaged in essential or pre-approved activities. On March&#160;24, 2020, the government banned all international travel to The Bahamas by closing all airports and seaports. As a result of the measures taken by The Bahamas government, tourism on New Providence Island, where CW-Bahamas operates, temporarily ceased and economic activity in The Bahamas slowed dramatically. During the summer of 2020, travel restrictions were briefly lifted then reimposed. In November 2020, shelter-in-place regulations were loosened, and commercial and retail operations were permitted to open with limited capacity although working from home was still encouraged. The Emergency Powers Regulations expired on November 13, 2021 and the government then enacted new rules to prevent and manage community spread of COVID-19. Restrictions on economic activity have largely been lifted subject to businesses adhering to social distancing protocols, requiring customers to wear face masks and practicing regular sanitization. International travel to The Bahamas is permitted and individuals that wish to travel to The Bahamas must obtain a travel health visa which will be issued upon receipt of a negative COVID-19 test taken no more than three days prior to the date of arrival; the nature of the test depends on whether the individual travelling is fully vaccinated or not. Any visitor who is not fully vaccinated must complete a mandatory daily health questionnaire during their stay. Home port cruise ship departures from the Port of Nassau commenced in June 2021 and cruise ship arrivals into The Bahamas commenced in July 2021. Cruise ships are no longer required to disclose passenger and crew vaccination status.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">CW-Bahamas sells the water produced by its plants on a bulk basis to the WSC, which in turn provides water to the residences, businesses, and other end users on New Providence. Under the terms of each of its water supply agreements with the WSC, CW-Bahamas charges the WSC a fixed monthly amount, an amount each month that is based upon the amount of water supplied during the month, and pass-through energy charges, therefore CW-Bahamas&#8217; revenue is impacted by changes in water demand and energy prices. To date, the volume of water CW-Bahamas sells to the WSC has not been adversely impacted by the COVID-19 pandemic notwithstanding the downturn in economic activity on New Providence due to preventative measures taken by the government in March&#160;2020 and continuing thereafter in various forms. In addition, the adverse impact of the COVID-19 pandemic on The Bahamas government&#8217;s revenue sources may further delay the collection of CW-Bahamas&#8217; delinquent accounts receivable from the WSC.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">CW-Bahamas&#8217; operations have been designated as essential services by the government of The Bahamas. Presently, CW-Bahamas&#8217; day-to-day operations have not been materially impeded by the COVID-19 pandemic &#8211; we continue to produce and supply water to meet the requirements of our two water agreements with the WSC. We believe CW-Bahamas has sufficient spare parts and consumables inventories to continue normal operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;background:#ffffff;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Aerex</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">Aerex presently has 13 manufacturing employees. Should a number of these employees become ill or be required to enter quarantine because of COVID-19, Aerex could be required to reduce or cease its manufacturing activities, which could have a material adverse impact on our consolidated financial condition, results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">As a result of current economic conditions (resulting in part from the COVID-19 pandemic), in late March 2021 Aerex began experiencing issues with its supply chain for the raw materials and components used in its manufacturing operations, including higher prices, scarcities/shortages, and longer fulfillment times for its orders to suppliers. These conditions, and a decline in projected future sales to Aerex&#8217;s former largest customer, required us to record an impairment loss of ($2.9 million) for the three months ended June 30, 2021 to reduce the carrying value of our manufacturing reporting unit&#8217;s goodwill. While these economic conditions and issues continue, Aerex could have difficulty completing its orders from its customers and obtaining new business, which could have a material adverse impact on our consolidated revenue, results of operations and cash flows, and could require us to record additional impairment losses to reduce the carrying value of the goodwill recorded for our manufacturing reporting unit. Any such impairment losses could have a material adverse impact on our consolidated financial condition and results of operations.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">39</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;background:#ffffff;margin:0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">PERC</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">PERC&#8217;s operations are considered essential services by the states within which it operates. Presently, the COVID-19 pandemic has not materially impeded PERC&#8217;s day-to-day operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">Approximately 76% of PERC&#8217;s revenue of $13.4 million for the year ended December 31,&#160;2021 was generated in California under contracts with government entities. The State of California has publicly acknowledged on-going difficulties due to the COVID-19 pandemic, and such difficulties presently, or could in the future, extend to the various counties, municipalities, and other government-related entities in California, including PERC&#8217;s customers, which could adversely impact PERC&#8217;s revenue and the collection of its accounts receivable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 10pt 0pt;">PERC employs state-certified water and wastewater operators to operate various water treatment facilities in California and Arizona. Should a number of these employees become ill or be required to enter quarantine as a result of COVID-19, PERC could have difficulty meeting its contractual and statutory obligations for operating these water treatment facilities, which could have a material adverse impact on our consolidated financial condition, results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Cayman Water Retail License</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We sell water through our retail operations under a license issued in July&#160;1990 by the Cayman Islands government (the &#8220;1990 license&#8221;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January&#160;2018, we continue to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman Island: Seven Mile Beach and West Bay. In 2021 and 2020, we generated approximately 33% and 32%, respectively, of our consolidated revenue and 47% and 44%, respectively, of our consolidated gross profit from the retail water operations conducted under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The 1990 license was originally scheduled to expire in July&#160;2010 but was extended several times by the Cayman Islands government to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the license expired on January&#160;31, 2018. We continue to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with our understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. We continue to pay the royalty required under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#8220;OfReg&#8221;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services and promoting competition. OfReg, which began operations in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for the economic regulation of the water utility sector and the retail license negotiations from the WAC to OfReg in May&#160;2017. We began license negotiations with OfReg in July&#160;2017 and such negotiations are continuing. We have been informed during our retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of our license in a manner that could significantly reduce the operating income and cash flows we have historically generated from our retail license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Cayman Islands government could seek to grant a third party a license to service some or all of Cayman Water&#8217;s present service area. However, as set forth in the 1990 license, <i style="font-style:italic;">&#8220;the Governor hereby agrees that upon the expiry of the term of this Licence or any extension thereof, he will not grant a licence or franchise to any other person or company for the processing, distribution, sale and supply of water within the Licence Area without having first offered such a licence or franchise to the Company on terms no less favourable than the terms offered to such other person or company.&#8221;</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We are presently unable to determine what impact the resolution of our retail license negotiations will have on our cash flows, financial condition or results of operations but such resolution could result in a material reduction (or the loss) of the operating income and cash flows we have historically generated from our retail operations and could require us to </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">40</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">record an impairment loss to reduce the carrying value of our retail segment assets. Such impairment losses could have a material adverse impact on our <span style="background:#ffffff;">consolidated financial condition, results of operation and cash flows</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">CW-Bahamas Performance Guarantees</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our contracts to supply water to the WSC from our Blue Hills and Windsor plants require us to guarantee delivery of a minimum quantity of water per week. If the <span style="background:#ffffff;">WSC requires the water and </span>we do not meet this minimum, we are required to pay the WSC for the difference between the minimum and actual gallons delivered at a per gallon rate equal to the price per gallon that WSC is currently paying us under the contract. The Blue Hills contract expires in 2032 and requires us to deliver 63.0 million gallons of water each week. The Windsor contract expires in 2033 and requires us to deliver 16.8 million gallons of water each week.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Adoption of New Accounting Standards:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">None.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Effect of newly issued but not yet effective accounting standards:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">In March 2020, the FASB issued ASU No. 2020-04, Reference Rate Reform (Topic 848), which provides optional expedients and exceptions to the current guidance on contract modifications and hedging relationships to ease the financial reporting burdens of the expected market transition from LIBOR and other interbank offered rates to alternative reference rates. The guidance was effective upon issuance and may be applied prospectively to contract modifications made and hedging relationships entered into or evaluated on or before December 31, 2022. We are currently evaluating the impact of the new guidance on our consolidated financial statements, however the adoption of this standard is not expected to have a material impact on our financial position, results of operations or cash flows</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Dividends</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">On February 1, 2021, we paid a dividend of $0.085 to shareholders of record on January 4, 2021.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">On April 30, 2021, we paid a dividend of $0.085 to shareholders of record on April 1, 2021.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">On July 30, 2021, we paid a dividend of $0.085 to shareholders of record on July 1, 2021.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;background:#ffffff;">On October 29, 2021, we paid a dividend of $0.085 to shareholders of record on October 1, 2021</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">On January 31, 2022, we paid a dividend of $0.085 to shareholders of record on January&#160;3, 2022.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">On February 22, 2022, our Board declared a dividend of $0.085 payable on April 29, 2022 to shareholders of record on April 1, 2022.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have paid dividends to owners of our common stock and redeemable preferred stock since we began declaring dividends in 1985. Our payment of any future cash dividends will depend upon our earnings, financial condition, cash flows, capital requirements and other factors our Board of Directors deems relevant in determining the amount and timing of such dividends.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Dividend Reinvestment and Common Stock Purchase Plan</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">This plan is available to our shareholders, who may reinvest all or a portion of their common stock dividends into shares of common stock at prevailing market prices and may also invest optional cash payments to purchase additional shares at prevailing market prices as part of this plan.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Impact of Inflation</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Under the terms of our Cayman Islands license and our water sales agreements in The Bahamas and the British Virgin Islands, our water rates are automatically adjusted for inflation on an annual basis. Therefore, the impact of inflation on our gross profit, measured in consistent dollars, historically has not been material. However, we have not increased our retail water rates since January 2018 (despite the inflation that has occurred since that date) due to the lack of a resolution of our negotiations with OfReg for a new retail license. This lack of a rate increase has contributed to a decline in the gross </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">41</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">profit generated by our retail segment. Furthermore, our manufacturing segment has been adversely impacted by recent significant increases in raw material costs. Should the current inflationary trend continue, our results of operations and cash flows could be materially adversely affected.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Increases in fuel and energy costs and other items could create additional credit risks for us, as our customers&#8217; ability to pay our invoices could be adversely affected by such increases.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_cc646c94_dda2_493d_bd92_a1a2cef0da15"></a><a id="ITEM7AQUANTITATIVEANDQUALITATIVEDISCLOSU"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 7A.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">QUANTITATIVE AND QUALITATIVE DISCLOSURE ABOUT MARKET RISK</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Not applicable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">42</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_8316e5de_8438_418e_8423_1918a03b08eb"></a><a id="ITEM8FINANCIALSTATEMENTSANDSUPPLEMENTARY"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 8.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:6.99%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Page</b></p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">CONSOLIDATED WATER CO. LTD.</b></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">INDEX TO CONSOLIDATED FINANCIAL STATEMENTS</b></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#REPORTOFINDEPENDENTREGISTEREDPUBLICACCOU"><span style="font-style:normal;font-weight:normal;">Report of Independent Registered Public Accounting Firm</span></a> (PCAOB ID No. <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:AuditorFirmId" id="Narr_m5119DlNXEaMSjB3tePCTQ">688</ix:nonNumeric>)</p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">44</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#CONSOLIDATEDBALANCESHEETS_889336"><span style="font-style:normal;font-weight:normal;">Consolidated Balance Sheets as of December&#160;31, 2021 and 2020</span></a></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">46</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#CONSOLIDATEDSTATEMENTSOFINCOME_77454"><span style="font-style:normal;font-weight:normal;">Consolidated Statements of Income for the Years Ended December&#160;31, 2021 and 2020</span></a></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">47</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUI"><span style="font-style:normal;font-weight:normal;">Consolidated Statements of Stockholders&#8217; Equity for the Years Ended December&#160;31, 2021 and 2020</span></a></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">48</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#CONSOLIDATEDSTATEMENTSOFCASHFLOWS_826826"><span style="font-style:normal;font-weight:normal;">Consolidated Statements of Cash Flows for the Years Ended December&#160;31, 2021 and 2020</span></a></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">49</p></td></tr><tr><td style="vertical-align:middle;width:93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a href="#NOTESTOCONSOLIDATEDFINANCIALSTATEMENTS_2"><span style="font-style:normal;font-weight:normal;">Notes to Consolidated Financial Statements</span></a></p></td><td style="vertical-align:bottom;width:6.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">50</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Schedule II, Valuation and Qualifying Accounts, is omitted because the information is included in the financial statements and notes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">43</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_feef2d68_cd13_4adb_89dd_7b12aaff95a8"></a><a id="REPORTOFINDEPENDENTREGISTEREDPUBLICACCOU"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">To the Shareholders and Board of Directors of </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Consolidated Water Co. Ltd.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Opinion on the Financial Statements</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We have audited the accompanying consolidated balance sheet<b style="font-weight:bold;">s</b> of Consolidated Water Co. Ltd. (the &#8220;Company&#8221;) as of December 31, 2021 and 2020, the related consolidated statements of income, stockholders&#8217; equity and cash flows for each of the two years in the period ended December 31, 2021, and the related notes (collectively referred to as the &#8220;financial statements&#8221;). &#160;In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2021 and 2020, and the results of its operations and its cash flows for each of the two years in the period ended December 31, 2021, in conformity with accounting principles generally accepted in the United States of America.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Basis for Opinion</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">These financial statements are the responsibility of the Company&#39;s management. Our responsibility is to express an opinion on the Company&#39;s financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (&quot;PCAOB&quot;) 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.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audits to obtain reasonable assurance about whether the 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&#39;s internal control over financial reporting. Accordingly, we express no such opinion. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our audits included performing procedures to assess the risks of material misstatement of the 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 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 financial statements. We believe that our audits provide a reasonable basis for our opinion.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Critical Audit Matters</b> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The critical audit matters communicated below are matters arising from the current period audit of the financial statements that were communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Evaluation of Goodwill for All Reporting Units </i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-style:italic;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">At December 31, 2021, the Company&#8217;s goodwill balance was $10,425,013. As discussed in Note 2 to the consolidated financial statements, the Company evaluates the possible impairment of goodwill at least annually, or upon a triggering event, for each of its four reporting units &#8211; retail, bulk, services, and manufacturing. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company estimated the fair value of their reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. The seven-year projections were based upon historical and anticipated future </p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">44</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company also estimated the fair value of each reporting units by applying the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company weighted the fair values estimated for each reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The weighted approach applied 80% to the discounted cash flow method and 20% to the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Management identified a triggering event, which required an evaluation of the fair value of goodwill recorded in the manufacturing reporting unit as of June 30, 2021. The fair value of the manufacturing reporting unit did not exceed its carrying value as of this measurement date and, therefore, an impairment expense of $2,900,000 was recognized as of June 30, 2021. The Company also evaluated the fair value of goodwill recorded for all four reporting units as of December 31, 2021 noting that the fair value of the reporting units exceeded its carrying value as of this measurement date and, therefore, no additional impairment was recognized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Management&#8217;s goodwill impairment assessments for the separate reporting units involves subjective management assumptions. These assumptions are forward-looking and are affected by shifts in the evolving market landscape. Changes in these assumptions can have a material effect on the determination of the fair value of each reporting unit. The most subjective and significant assumptions used in the valuing each reporting unit are the estimated discount rates, selection of guideline companies, and future operating projections. Given the significant judgments made by management to estimate the fair value of each reporting unit, performing audit procedures to evaluate the reasonableness of management&#8217;s estimates and assumptions related to the projections of future operating results required a high degree of auditor judgment and an increased extent of effort.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our audit procedures to test management&#8217;s goodwill impairment evaluations included the following, among others:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We utilized our internal valuation specialists to assess the valuation methodologies and significant assumptions discussed above. This includes assessing the discount rates and guideline public companies.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We evaluated the reasonableness of management&#8217;s revenue and operating projections for all reporting units by comparing the projections to the Company&#8217;s historical operating results, reviewing internal communications between management and prospective customers, and comparing to underlying source documents (if available) such as customer contracts included within the Company&#39;s backlogs.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We recalculated and tested the estimated fair values of the Company&#8217;s reporting units.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We assessed management&#39;s sensitivity analysis regarding the significant assumptions used in the valuation. </span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">We reviewed the results of our audit procedures performed throughout the course of the engagement and compared our results to the goodwill impairment analysis to verify that there is no contradictory evidence that would result in a change to the overall assumptions or conclusions reached by management. </span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p><a id="_1529f93e_df43_4c9d_81bf_efa1521db5a5"></a><a id="Tc_1Qmuyhkvnkym-ImEF-SdHg_1_0"></a><a id="Tc_iqCORLiKQEqABZksOuN_xA_3_0"></a><a id="Tc_IOfWml9MOkqsoiKl7A67hg_6_0"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:98.74%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:49.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:49.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">/s/ </b><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:AuditorName" id="Narr_4-o4mJ2GbECyMJIjAYmTnQ"><b style="font-weight:bold;">Marcum LLP</b></ix:nonNumeric></p></td><td style="vertical-align:bottom;width:50.63%;border-bottom:1px solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.36%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">We have served as the Company&#8217;s auditor since 2005.</p></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="dei:AuditorLocation" id="Tc_usVbDCboykKxO-qxSnIWFg_5_0">West Palm Beach, Florida</ix:nonNumeric></p></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:49.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March 29, 2022</p></td><td style="vertical-align:bottom;width:50.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">45</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_cb2cb099_9596_4da6_979d_93f6342ef561"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED WATER CO.&#160;LTD.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:6pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="CONSOLIDATEDBALANCESHEETS_889336"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED BALANCE SHEETS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_e0de67db_1e6d_40fd_98ad_f87aad153786"></a><a id="Tc_oYUXUZ8T5EC4cx5q-Jdwig_1_2"></a><a id="Tc_CLXfvO6emkWXZ27ydIHKRQ_2_2"></a><a id="Tc_JtyB6hM0bUumxOhF8_mA1Q_2_5"></a><a id="Tc_icpOgvzkZ0edyvqsrSKdcQ_4_0"></a><a id="Tc_4iM81aWVhEGGyMqqMTyJLg_5_0"></a><a id="Tc_Koe9Kdqkdk6s2mUVUUs7FA_6_0"></a><a id="Tc_6FnVC2K5Qk-2weu_R4FXkg_6_2"></a><a id="Tc_c_ZGhAj3vkG2JEWfHAiLAw_6_5"></a><a id="Tc_ub1bFkeDGU6lvj302UTkug_7_0"></a><a id="Tc_rNCFc_CtOUO63xIVe_BDMQ_8_0"></a><a id="Tc_7sazOUBNZ0CcT692YPHEvA_9_0"></a><a id="Tc_CJeEjjXnKUS-2Z0UJtSEdw_10_0"></a><a id="Tc_NJxb2_4Qf0mW73XPXzrF_A_11_0"></a><a id="Tc_XrqcgIAYf0mOrGU1wlkLvQ_12_0"></a><a id="Tc_GZwxgw0EpEidxuq-fCg8jA_13_0"></a><a id="Tc_X9809BOaYk27uwriVDeaLw_14_0"></a><a id="Tc_lBR83lweGEqaP4PTgoU0FA_15_0"></a><a id="Tc_1BbTZK7kPEmAs38haLtU1Q_16_0"></a><a id="Tc_OtCV3Reyi0Scyctmaw3oLA_17_0"></a><a id="Tc_3Dcue31DkEKpVSMdqgxyfw_18_0"></a><a id="Tc_6pLJJIHurUGlKGv1rC6kkw_19_0"></a><a id="Tc_CgQxLIkOEUWRLKGP1QSQFg_20_0"></a><a id="Tc_PWmxhaZ4Pk2u16TYyc_5kw_21_0"></a><a id="Tc_NeNCyzp78ESlCuBH2Se60A_22_0"></a><a id="Tc_YBl3t1eANUm_J74i4Ygn8g_23_0"></a><a id="Tc_RzNNJR7JJEOWEc4DgwmD7Q_24_0"></a><a id="Tc_KbW1qXU7qUq6N8_F0uk7Fg_24_2"></a><a id="Tc_i5iN6sQHFE2-gKeJPP_ZsA_24_5"></a><a id="Tc_HGYM2UQSVEmnyWtgZbdJ_Q_26_0"></a><a id="Tc_KVh8rBYUOUKZKEcCAWvWUg_27_0"></a><a id="Tc_MMVEGscRF0WKFWrt-3a5eg_28_0"></a><a id="Tc_gKgSwIFgKE6yBFQgcs2ckw_28_2"></a><a id="Tc_dvarEhtcGkSB19G3HsQbYw_28_5"></a><a id="Tc_eUKFqmSXHUWrC8nJbq8nBw_29_0"></a><a id="Tc_YtUWpnAEE0eZ4VNEdRNu4Q_30_0"></a><a id="Tc_lRhu9INYdUO43zxB0Ms2-g_31_0"></a><a id="Tc_mZ65Aja2TUi0PvbuFmz8Tw_32_0"></a><a id="Tc_sU5TjtTpuEyS1KLZ5dfEJA_33_0"></a><a id="Tc_oGkVNP-Nmku_08LNM2Tw5Q_34_0"></a><a id="Tc_OPw9067uwkCRmzetpD2zTQ_35_0"></a><a id="Tc_4QFbtJZAfkyx81GxFeMUYg_36_0"></a><a id="Tc_ad55bnNOf0uquhOveLBw8w_37_0"></a><a id="Tc_2prmedyGKk6UUaP4o1ofLw_38_0"></a><a id="Tc_7_4gRRbkAkaDS2EIuGCJRg_39_0"></a><a id="Tc_avSZUd91W0qKfre6gzSHgg_40_0"></a><a id="Tc_ML0W1ry2GUCK9NXzjk7OlA_41_0"></a><a id="Tc_UnYtOCico067joIBIJq3Eg_42_0"></a><a id="Tc_FlKhvlvjAU-kJxScisMFew_43_0"></a><a id="Tc_lO66DZd64kiHrmYVbOCLYQ_44_0"></a><a id="Tc_4RHQ9FZ-qEKLjbZ7cM12tA_45_0"></a><a id="Tc_wpKjxA8n0Uq7e15noJJd1Q_46_0"></a><a id="Tc_6Lw3rc5mV0CWFBzmX5Y3EA_47_0"></a><a id="Tc_WeirAfEIYEu3r51pbIqXcA_48_0"></a><a id="Tc_FHTLV4kTxkmrXn034OSFOg_49_0"></a><a id="Tc_HWUkiwQr7kCE_LmIVgbuBw_50_0"></a><a id="Tc_EeRFHuAvSESCRQRDe9YbKg_51_0"></a><a id="Tc_B9H9AP-5_kCR0HjbpMkKKA_52_0"></a><a id="Tc_iAgD7NFB0EyiUS2UYzf03A_53_0"></a><a id="Tc_7whIgFo1pUq1jEy6DXvD4Q_54_0"></a><a id="Tc_NMYw-mYcKkKFzJv5sAhSuw_55_0"></a><a id="Tc_rk9g6mbbmEi56YfW_5h6sw_56_0"></a><a id="Tc_fhJl2672ZUSk5jBW_psVPQ_56_2"></a><a id="Tc_33I271RVyUGvHq8CifhryA_56_5"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">ASSETS</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" id="Tc_bjYA-hFoJESGOY8mUrdKiA_6_3">40,358,059</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" id="Tc_EuT8juaJM0yYtG0CBIJ4fQ_6_6">43,794,150</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Certificate of deposit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CertificatesOfDepositAtCarryingValue" scale="0" id="Tc_bgAWgeyjzE2w3zf1xpKQaA_7_3">2,500,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:zerodash" name="us-gaap:CertificatesOfDepositAtCarryingValue" scale="0" id="Tc_C1HzsdXge0CaXGuCUJCA9g_7_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_l8A92UDguUCgI_1Ji3jezg_8_3">27,349,307</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_Y02PH8pkLEWopxzsdV3TlQ_8_6">21,483,976</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="0" id="Tc_w0ifeJN7yEKuPVxFSlbtnQ_9_3">2,504,832</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="0" id="Tc_HjL8dldQAUiKchr_44p78A_9_6">3,214,178</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" id="Tc_WkDelLeskUuIWBHhRVyskg_10_3">2,558,822</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" id="Tc_HlBLIC7gGk-Cf243zANz9A_10_6">2,412,282</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Contract assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNetCurrent" scale="0" id="Tc_WBw57Spft0KwvglvQ6WsQw_11_3">489,961</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNetCurrent" scale="0" id="Tc_GQbPbtJ140SAZlISWbJ_Vw_11_6">516,521</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Current assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" scale="0" id="Tc_xiFh4ED2QE-_lQ3z320rvw_12_3">1,173,741</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" scale="0" id="Tc_MxXDkvSTLEycP-wAoQzXPg_12_6">1,511,099</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total current assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="0" id="Tc_SztwvCqqkkyw2QQYsnnMRg_13_3">76,934,722</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="0" id="Tc_SVtRw5LEsUeHLDJ9PCGSLw_13_6">72,932,206</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_BHBFGqcdhEOR247AWV0JTw_14_3">52,946,539</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_UsVu_HuiSUCbYgcnlL0ZDg_14_6">57,687,984</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_kCA7wKXsLkaEHcxbibRrhw_15_3">710,863</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_xIUWZBvZd0Cteq2dxL9B5w_15_6">440,384</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, noncurrent</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNoncurrent" scale="0" id="Tc_SSW91yz_xE6JqrWs-FVwqQ_16_3">4,733,010</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNoncurrent" scale="0" id="Tc_dQNtVIDZekOHa03AgtkxNQ_16_6">4,506,842</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Investment in OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestments" scale="0" id="Tc_bZO0IhM-8k-pLn-tOAw3Cw_17_3">1,715,905</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestments" scale="0" id="Tc_HK185ipgek2GjC5CHpkSRQ_17_6">2,092,146</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_RoglktV5JkK8z4oOJlNxsA_18_3">10,425,013</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_1XeGtUGN30G4CPdu92RDbg_18_6">13,325,013</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_WhynodM_0kOCA51wZlOnmg_19_3">3,401,666</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_pRtq8W0Ib0mT5bR93PpH8w_19_6">4,148,333</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" id="Tc_vm9K7AwwBE2Q2Hv6OWI0Gg_20_3">2,681,137</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" id="Tc_WepBar7GikKd9FWKNyKI7A_20_6">1,329,561</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Net asset arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_U9UJBiimWkG8eD37_cqi_A_21_3">128,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:zerodash" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_R6kTknzErUWnefGTtNLbVw_21_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="0" id="Tc_10wp1gUtnk-HvYzwBkYvGw_22_3">2,204,013</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherAssetsNoncurrent" scale="0" id="Tc_a-4BpDRzxEW74BZ1rkWoSg_22_6">1,926,594</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Long-term assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" scale="0" id="Tc_lKzZKh7qm02wSLwgsNV2eQ_23_3">21,146,186</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" scale="0" id="Tc_HzHg9e7KKkykTrDDquGbVQ_23_6">21,166,489</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total assets</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="0" id="Tc_ZRCSRPJn5E-D2cGdCRko3w_24_3">177,027,054</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="0" id="Tc_pAh6DyxCIEiu6l9yfK_gkg_24_6">179,555,552</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">LIABILITIES AND EQUITY</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Accounts payable, accrued expenses and other current liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" scale="0" id="Tc_gSHkziON3EmvSnaPcmqa0A_28_3">2,831,925</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" scale="0" id="Tc_cP3oyGKtmU-Pbs-NybbCrA_28_6">2,740,191</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Accounts payable - related parties</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableRelatedPartiesCurrent" scale="0" id="Tc_l_YDgtupukOLWa7tW4sRmg_29_3">163,947</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableRelatedPartiesCurrent" scale="0" id="Tc_0eBXYqGN20uEcxD8MZ8JtQ_29_6">200,558</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Accrued compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="0" id="Tc_H7q4fiE8IkWXiBaIrdx1BQ_30_3">1,435,542</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="0" id="Tc_RUvbNCm7okquSmi_CCTctA_30_6">1,434,106</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Dividends payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPayableCurrent" scale="0" id="Tc_VWODalf5zkmBdiHPWuEBqw_31_3">1,320,572</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPayableCurrent" scale="0" id="Tc_aGn-ow3qC0adOpXU7vbERw_31_6">1,300,022</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Current maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" id="Tc_8GSvp2124E-qAB75422UZw_32_3">592,336</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" id="Tc_D36Q1SRCeku9lJnSDmFlng_32_6">455,788</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Current portion of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtCurrent" scale="0" id="Tc_zdcj7jQkg0yKfn6LKAxg0g_33_3">62,489</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtCurrent" scale="0" id="Tc_LcA_vv5mFk-s-r3XY9DPLw_33_6">42,211</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" id="Tc_pgMW9qIS70SELFMmTY2wxg_34_3">513,878</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" id="Tc__Cx08GE3J0KeEaoFZAeI_g_34_6">461,870</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeCurrent" scale="0" id="Tc_823DPCXHB0KH8e7tzJQxBA_35_3">583,646</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeCurrent" scale="0" id="Tc_Wc9mmpf8VE-AVmtIxSLF3Q_35_6">115,936</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Current liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" scale="0" id="Tc_UN1OL2jPsUKWEcX9XI2h6Q_36_3">182,322</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" scale="0" id="Tc_bJsgZNNdskmu3ZnXiwKDHw_36_6">188,434</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total current liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="0" id="Tc_6ovCbt8dpku4VcxnXV-vAg_37_3">7,686,657</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="0" id="Tc__Pj-31VQe0uvx5zjYB21rw_37_6">6,939,116</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt, noncurrent</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtNoncurrent" scale="0" id="Tc_HLNstLeeXkKhMcC2n1HONw_38_3">152,038</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LongTermDebtNoncurrent" scale="0" id="Tc_nMaDSVIEpESayMLRlhXFwQ_38_6">126,338</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="0" id="Tc_FLJAE13f1EeIl52tuc3i6w_39_3">1,236,723</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="0" id="Tc_nn5voPjSRkyZfQRt0oWJQQ_39_6">1,440,809</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" id="Tc__vhn-Iydy0K7HXFwSzNbVQ_40_3">2,137,394</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" id="Tc_WoMKOirVq0CgLmZbZwTFYg_40_6">982,076</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Net liability arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:zerodash" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" scale="0" id="Tc_TCi3wKXyCkiWDdOAeiMpnw_41_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" scale="0" id="Tc_J9kyZzXHYEmT5sNbT6bq7g_41_6">690,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Other liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherLiabilitiesNoncurrent" scale="0" id="Tc_VUXKSlarpUCQCnkCYiJt9g_42_3">141,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherLiabilitiesNoncurrent" scale="0" id="Tc_k1-7NgGPXEeAHZDtXqggwA_42_6">362,165</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Long-term liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" scale="0" id="Tc_Ug760AdDl0GoeKWbakEASw_43_3">7,819</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" scale="0" id="Tc_-S_lW2jOMke_cla8tG7aOA_43_6">2,499</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total liabilities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="0" id="Tc_IkGGYbEFhEO-rYXiQA56Aw_44_3">11,361,631</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="0" id="Tc_FFfzftOVMka1gWuRkgDHQQ_44_6">10,543,003</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Commitments and contingencies</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Consolidated Water Co. Ltd. stockholders&#39; equity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="font-size:8pt;">Redeemable preferred stock, </span><span style="font-size:8pt;">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="Narr_jYM3y-cWI0qd-LcRg_TPag"><ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="Narr_uKtYRoWxqUqsRX0go7eyCw">0.60</ix:nonFraction></ix:nonFraction></span><span style="font-size:8pt;"> par value. Authorized </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="Narr_qtR6ygqqAE62SkHQakt0-A"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="Narr_2peDjfKgeU2L6ns7zcM_rA">200,000</ix:nonFraction></ix:nonFraction></span><span style="font-size:8pt;"> shares; </span><span style="-sec-ix-hidden:Hidden_emqxMykmwk2ThFkpP2wxLA;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">issued</span></span><span style="font-size:8pt;"> and </span><span style="-sec-ix-hidden:Hidden_uu0zN9ycDUWaXmsBNmtLmQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">outstanding</span></span><span style="font-size:8pt;"> </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesIssued" scale="0" id="Narr_n8s7D9guuUyj5DHsVY4Q5Q">28,635</ix:nonFraction></span><span style="font-size:8pt;"> and </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesOutstanding" scale="0" id="Narr_X_2MY0kcJkG8PnhGN08Wsw">31,068</ix:nonFraction></span><span style="font-size:8pt;"> shares, respectively</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PreferredStockValue" scale="0" id="Tc_PWh1FvmmTUy0suTu5AQJ_w_48_3">17,181</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PreferredStockValue" scale="0" id="Tc_OKNm5AHOhEqIvFskrf7WeQ_48_6">18,641</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="font-size:8pt;">Class A common stock, </span><span style="font-size:8pt;">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_luvdcWOPgU6ViEIVCVXi3A"><ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_ulq-pTN6UkaXZK19SZp45g">0.60</ix:nonFraction></ix:nonFraction></span><span style="font-size:8pt;"> par value. Authorized </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_aD0WCLGdLEyMh-MRy4B47g"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_dG2rRPbKn0elZCb88BYEog">24,655,000</ix:nonFraction></ix:nonFraction></span><span style="font-size:8pt;"> shares; </span><span style="-sec-ix-hidden:Hidden_sxtnWVSthEODA80uNzrRkw;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">issued</span></span><span style="font-size:8pt;"> and </span><span style="-sec-ix-hidden:Hidden_7HifNNE6xkyTI6fN4bdL1g;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;">outstanding</span></span><span style="font-size:8pt;"> </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="Narr_LEqwjnVIzkmAe5stCL-Bag">15,243,693</ix:nonFraction></span><span style="font-size:8pt;"> and </span><span style="font-size:8pt;"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" id="Narr_G6INmdLlI0i5GtZQenZzpg">15,143,683</ix:nonFraction></span><span style="font-size:8pt;"> shares, respectively</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CommonStockValue" scale="0" id="Tc_jCOp8m1v-UK7h7_KW8GnBw_49_3">9,146,216</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CommonStockValue" scale="0" id="Tc_AZg1XSFX0kK4TXf_XKvCVQ_49_6">9,086,210</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Class B common stock, $<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_cuuKWNZ5oUuJAkaVBUP-rA"><ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="Narr_6wCLd3q_JEi7kSx4fTA5Rw">0.60</ix:nonFraction></ix:nonFraction> par value. Authorized <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_4bLCKTDJDkOkzWn_2I_a4w"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="Narr_ggaMVYaqy0KklGMzgIhVsA">145,000</ix:nonFraction></ix:nonFraction> shares; <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:CommonStockSharesIssued" scale="0" id="Narr_A1V3Qa6lBEq6eRtGbMYN6g"><ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:CommonStockSharesIssued" scale="0" id="Narr_LYxFU-C52EyjniCfoFV6cQ">none</ix:nonFraction></ix:nonFraction> issued</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A" decimals="0" format="ixt:zerodash" name="us-gaap:CommonStockValue" scale="0" id="Tc_I0RQSgtKJ0ehHEM5oqPVZA_50_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw" decimals="0" format="ixt:zerodash" name="us-gaap:CommonStockValue" scale="0" id="Tc_OtF9PhKsA0KVOA1FJtWx8g_50_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Additional paid-in capital</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapital" scale="0" id="Tc_qRFyy0D_G0O5flnV1jDr3A_51_3">87,812,432</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapital" scale="0" id="Tc_FZXPicvAY0G9UuNYZb35Hw_51_6">86,893,486</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 6pt;">Retained earnings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" id="Tc_1PlKa4FvLkGeClOPd_4WeQ_52_3">60,603,056</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" id="Tc_42HV_zbTM0CxS6IacIjiLA_52_6">64,910,709</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Total Consolidated Water Co. Ltd. stockholders&#39; equity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="0" id="Tc_S0yleoDfvUKQ9eov15rMwg_53_3">157,578,885</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="0" id="Tc_Mw2jFQJ0U0-_QmHQFLBLRA_53_6">160,909,046</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:MinorityInterest" scale="0" id="Tc_9kc6DB0zIUiI9Sw02H8OFQ_54_3">8,086,538</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:MinorityInterest" scale="0" id="Tc_HxQKtkryq0yrmEpjXnyCYQ_54_6">8,103,503</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_Hbr6QxdK5k2YVFHiJIqZyQ_55_3">165,665,423</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_-OlduVqFIEmIJ01OW9cIZg_55_6">169,012,549</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:71.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total liabilities and equity</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" id="Tc_6w31Ktucmkee1dhiX43Y4g_56_3">177,027,054</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.71%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" id="Tc_Vh_aOEfJE0SkeYgOTDS0dw_56_6">179,555,552</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="color:#70ad47;font-size:4pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">The accompanying notes are an integral part of these consolidated financial statements.</p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">46</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_dab38efc_5416_4546_890a_c122f074671c"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED WATER CO.&#160;LTD.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="CONSOLIDATEDSTATEMENTSOFINCOME_77454"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED STATEMENTS OF INCOME</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_3aa2c4f7_5b00_4ea7_b436_0fc84ccc164d"></a><a id="Tc__Ox3u7cIoEeGvjfjoHQ3ZA_1_2"></a><a id="Tc_K52nlLJFTkK9jJ-osM4PcA_2_2"></a><a id="Tc_KqpPJuopsUiDLdFqJWk-BA_2_5"></a><a id="Tc_gMpqcHM_7kSIMkCryLIx8A_3_0"></a><a id="Tc_6INthZTj7k21Ed5CWCvsLQ_3_2"></a><a id="Tc_ILl_7f0pgkiosYbd675hGA_3_5"></a><a id="Tc_q7keLuDw7k-LRQSWmAJtAg_4_0"></a><a id="Tc_r387cUQWCEWS5P376PJ46g_5_0"></a><a id="Tc_Sx3wrLJr_kKcNqgWLYWyHA_6_0"></a><a id="Tc_c2dqnGzmYkO40L8SJ5hcbg_7_0"></a><a id="Tc_vx38bLo4sk696gJ2Hq7Rjw_8_0"></a><a id="Tc_F0Pg6k5o4EiRKBuNrFu2uw_10_0"></a><a id="Tc_MzqQjSn_3kSfBZw5DOmNhw_11_0"></a><a id="Tc_MfYU9tFBbUC8IXpTwv8epQ_12_0"></a><a id="Tc_k69NCRZiOEGmR-jzhcq_qg_13_0"></a><a id="Tc_JWK5JF4YT0abERVBMZ9dOg_14_0"></a><a id="Tc_zsqRIMOIrkiEoipEGleopA_15_0"></a><a id="Tc_Vxf9mOldY0SWeMk4XMPwzA_16_0"></a><a id="Tc_-h1wcB4QT0WcFfSWobjqZA_17_0"></a><a id="Tc_UY2NLyvA2kiBNl7OOQiEsQ_18_0"></a><a id="Tc_7IkH6zzKXUmmGA81azP9XA_19_0"></a><a id="Tc_h44kdpNy_EuiZXlDuHByiw_20_0"></a><a id="Tc_59dqrKt4Qk-8OWgP32rGZQ_21_0"></a><a id="Tc_4WJf79USyEqouduVRqW3yA_22_0"></a><a id="_Hlk99045219"></a><a id="Tc_oIDjfsHODkinhdUeawoSkw_23_0"></a><a id="Tc_a1Ysc-J7Cke0h_zaRYWOkw_24_0"></a><a id="Tc__TMPVjc77ESao9_4Rc97cA_24_2"></a><a id="Tc_f3-RuOKppU6TYfzrKjmhJQ_24_5"></a><a id="Tc_S6V7Bcm_F06NgQsJJr4gGg_26_0"></a><a id="Tc_SEET1lUmS0mPvUnaozQZig_27_0"></a><a id="Tc_rPjw41JutkKLUT-R9kAstA_27_2"></a><a id="Tc_kGIlKAT3zEehcEpcD63Cmg_27_5"></a><a id="Tc_2UNjsCiR0UeVfDM9ZtkaPg_28_0"></a><a id="Tc_EaTXIcFwCEWv5mgEbpMYRg_29_0"></a><a id="Tc_gOBm9HGkzkmWaOVpKgnMPg_29_2"></a><a id="Tc_bOyT-6uvgkubhdYubHuvxg_29_5"></a><a id="Tc_g2Inx36SUEGfXEj-3-ubyQ_31_0"></a><a id="Tc_jXUHodGtwUeGqWSefDnREQ_32_0"></a><a id="Tc__q4HyOUcBUKz4fTjHLhp2w_32_2"></a><a id="Tc_emVKDiRRjUOQXi0JpxnIVQ_32_5"></a><a id="Tc_DEx6MTfCmkGiomrwHLyMIg_33_0"></a><a id="Tc_qmNklSKPZkWHYMVUmQH1jA_34_0"></a><a id="Tc_r1DoLhBepUmZAzN0RiHTKA_34_2"></a><a id="Tc_Zn9s48T3kk-8Dtq9RS_Y6Q_34_5"></a><a id="Tc_YiDQP9v4R0yuYpIzTTPKOg_36_0"></a><a id="Tc_wYNPhZI1CE6QFfQjfTxXUQ_36_2"></a><a id="Tc_G8VgC8D1q0a3dlXIs5_tRg_36_5"></a><a id="Tc_Syvi1ixLQkyaq-yIZK5S8g_38_0"></a><a id="Tc_WsCxnUawMEGga-M3NeLwaw_39_0"></a><a id="Tc_A05kR1oXcUKzVmfrQTRA9g_40_0"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_RwtEgspXnUuB3S4P9PR0eA_3_3">66,863,502</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_yUSkcb1nyUe6ZDJoWCMQfA_3_6">72,628,126</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:6pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-size:8pt;font-weight:bold;">Cost of revenue </b><span style="font-size:8pt;">(</span>including purchases from related parties of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_NgFcF_z9AkeaBBCKv5w20w">437,857</ix:nonFraction> in 2021 and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_3Tsz8pPl-0S59_MFCYzCnA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_Nu8CsPrHzEmiHPLrTI1S0Q">1,349,331</ix:nonFraction> in 2020)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_sO4v208oBkGfz9jkUhCZHw_4_3">43,356,311</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_kqQcj38HGU2bZF18rjSv3w_4_6">45,859,671</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross profit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc__7sYkn26JUaFv8OEL4xihA_5_3">23,507,191</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_5OLZFoXXakm7M-jTGaq5aw_5_6">26,768,455</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:6pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;">General and administrative expenses (</span>including purchases from related parties of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_6nLBAgvl_Ea8WqzLUJPsMw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_2JuZ4nLWAEGIRYruHHXhaQ">77,190</ix:nonFraction> in 2021 and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_ClrXIKaDvkynEKkj3w8NYg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_3mzLYSFoI0a_Qv_qeEKxsA">0</ix:nonFraction> in 2020)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_mQF5idb-SUyTbtwcXoExLQ_6_3">18,350,359</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_ce7xPj-L-k2xxbEJBMVRLw_6_6">18,434,898</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Gain (loss) on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" sign="-" scale="0" id="Tc_3Fe7xnzOm0qJoAbo-9LzMw_7_3">3,145,836</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_qDQvAOXYe0mhuy83tYPIKg_7_6">13,997</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Income from operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_1jHKLMRHMEyZmoVHWVxllw_8_3">2,010,996</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_sGDAufgQqEGpjCD9ei64vA_8_6">8,347,554</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Other income (expense):</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Interest income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestIncomeOther" scale="0" id="Tc_KF1VWLr-dUCP2yNZEX_jjg_11_3">684,809</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestIncomeOther" scale="0" id="Tc_6loZRyAE7U2piuO19fTudQ_11_6">540,096</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Interest expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestExpense" scale="0" id="Tc_hyhMs_w3Z0GaWvtAyLMH4Q_12_3">10,248</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestExpense" scale="0" id="Tc_7A0iTs_qRE6FWrxNJWWhNg_12_6">9,669</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Profit-sharing income from OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ProfitLossFromSubsidiaries" scale="0" id="Tc_UiQ0Y2OagUi0KNZObgeegg_13_3">22,275</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ProfitLossFromSubsidiaries" scale="0" id="Tc_nvB2eyYWkkKeork-zuprnA_13_6">135,675</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Equity in the earnings of OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" id="Tc_otqwWCHNlESVxwAad1J-eA_14_3">55,984</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromEquityMethodInvestments" scale="0" id="Tc_znCXc538dE6gG7N4NlJx3w_14_6">371,019</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Net unrealized gain (loss) on put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:UnrealizedGainLossOnDerivatives" scale="0" id="Tc_94RMkeqQYk-4Wv0TVO117g_15_3">818,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:UnrealizedGainLossOnDerivatives" sign="-" scale="0" id="Tc_81ozG7Oo0UW21gNighFRdw_15_6">26,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="0" id="Tc_W2p45ydbvEOxcLAEGX8Asw_16_3">52,775</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherNonoperatingIncomeExpense" scale="0" id="Tc_v_0YI1xTRUuIAsfKjROo0g_16_6">71,825</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Other income, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" id="Tc_ZvQ9kqzjp0SiM-8cUPquXw_17_3">1,623,595</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" id="Tc_fE3nsnn850GPymQpKsVzVg_17_6">1,082,946</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Income before income taxes</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_djsU7ErQzEmol7W8JUCXDA_18_3">3,634,591</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_AyZuabOSrkCC3bXxU7c9nA_18_6">9,430,500</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Provision (benefit) for income taxes</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_Kk37k-VsSEe1rSXnwisYqw_19_3">447,982</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" id="Tc_z_69UClgcUyWKHYFCndS8A_19_6">86,724</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net income from continuing operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_WeHz9rEL0EKP_t87_rsvaA_20_3">4,082,573</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_OkK8iBg5SE-HDhhui7uriQ_20_6">9,343,776</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Income from continuing operations attributable to non-controlling interests</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" scale="0" id="Tc_1OUTSNQ--kih9gDEW6T1EQ_21_3">632,915</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" scale="0" id="Tc_h3DpH_dg7kGTYFtiDjpt7g_21_6">730,005</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_OYgQExi2m0mLzi-V21UvZA_22_3">3,449,658</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_riMPHDDmH02rycmVUA2JVA_22_6">8,613,771</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total loss from discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_ZlQ5rRSRBUSqrhVWe20b2Q_23_3">2,574,079</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_nDeuJWgBV0ONWrnUaB-_DA_23_6">4,902,243</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net income attributable to Consolidated Water Co. Ltd. stockholders</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_Lp_Ga6MroEWIRHSVNqxG8Q_24_3">875,579</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_ceuffMgClUCZ1vL6kGsWpA_24_6">3,711,528</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Continuing operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="Tc_TqWWroDDV0W4k0URZWnQPg_27_3">0.23</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicShare" scale="0" id="Tc_lWWAXf01Z0-KXWVFZfW5Xg_27_6">0.56</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" sign="-" scale="0" id="Tc_wU9dW2P0t0SpnPD32Lwybg_28_3">0.17</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" sign="-" scale="0" id="Tc_iGyvtURCtEiPzgJW0sQoHQ_28_6">0.32</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Basic earnings per share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" scale="0" id="Tc_gWZ6DXHrtU6Ph4ECGtfJIg_29_3">0.06</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareBasic" scale="0" id="Tc_DEkxXEJdoke4AAlFz7piWA_29_6">0.24</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Continuing operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="Tc_17DPsdbLA0-7mLuFF5nSkg_32_3">0.23</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare" scale="0" id="Tc_iVLRsEyje0iwEbsFQz3J3Q_32_6">0.56</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" sign="-" scale="0" id="Tc_ZQm3Ba0UYku8EQBI0dSJdQ_33_3">0.17</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" sign="-" scale="0" id="Tc_DeCojPa0Bk28XTCx8C0PWA_33_6">0.32</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Diluted earnings per share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" scale="0" id="Tc_ofVfQM6K_U6zX42rfKdjyA_34_3">0.06</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EarningsPerShareDiluted" scale="0" id="Tc_Qj0l16MslE2378l6pPqqgQ_34_6">0.24</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Dividends declared per common and redeemable preferred shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="Tc_2IHKhuo2-UGH__3tjV3gaQ_36_3">0.34</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="Tc_a0uc1VMAbk6TSQLfztv4LQ_36_6">0.34</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted average number of common shares used in the determination of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Basic earnings per share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_nkLCil26bkKFL945qqoyiQ_39_3">15,213,816</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_cUw6L4S1e0OcqIYdKPGs2A_39_6">15,119,305</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 12pt;">Diluted earnings per share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_3zqqAALNx0SPex2kkz-BjA_40_3">15,310,145</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.12%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.45%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc__upSMz3noUuekmknGBP9DA_40_6">15,223,955</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 12pt 0pt;">The accompanying notes are an integral part of these consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">47</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:8%;padding-right:8%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_efecfb11_98b9_4639_8110_011aa93a6cdf"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED WATER CO.&#160;LTD.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="CONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUI"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217;&#160;EQUITY</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_b10d8990_8b60_4238_bdcf_9bec5eb4007c"></a><a id="Tc_syGvqqrWnkGORKTJngDgkQ_1_2"></a><a id="Tc_6r5Abs1mWU2e091SHiCedg_1_12"></a><a id="Tc_PCCSJ1IIukqZYbDRfUQJTQ_1_21"></a><a id="Tc_aPih0Gd02EygEhgdKJr8jw_2_2"></a><a id="Tc_PUUXYjDVzE65bhsy6e3Qew_2_7"></a><a id="Tc_oLWqSTklO0iDWZiwSXJVDg_2_12"></a><a id="Tc_RdwKYzLD4EChjQOwaA6IjQ_2_15"></a><a id="Tc_hWHXRkuZS0Sif1r_3jrIFQ_2_18"></a><a id="Tc_5JeKLkkLLUe-xvK87c1QmA_2_21"></a><a id="Tc_pdzmSMwS9kGhHinNPp1wJw_3_2"></a><a id="Tc_YCXW-IZROUiGEZBIN8gtfg_3_4"></a><a id="Tc_Gh6dd7M4Uki0Ly-D3sF-wQ_3_7"></a><a id="Tc_7L0r-gmmLE61tcz48pQXBg_3_9"></a><a id="Tc_KpK5wr_lfUOCtp8yX20T4w_3_12"></a><a id="Tc_zqE7OtNXPk2xwUVcLbBMVg_3_15"></a><a id="Tc_Bn8yHrebwkaTHx2bd5mU8A_3_18"></a><a id="Tc_6cUXFOlxfUe9StT1hFPAfQ_3_21"></a><a id="Tc_qMxotMO1MUGZ0CEgeHRVog_4_0"></a><a id="Tc_lxAlTTAUE0KVZatxrcEeWQ_4_4"></a><a id="Tc_r2cSKq_dwkmInLfOgFpQ3Q_4_9"></a><a id="Tc_tO9Yk1CvJU226xMI0Zyc5g_4_12"></a><a id="Tc_p59Os-UMHEeHAe4bREb8VQ_4_15"></a><a id="Tc_g04bj1CD1k6SlM0l70qTfw_4_18"></a><a id="Tc_oNDbEM6ieEyb9j6bjHv6Zw_4_21"></a><a id="Tc_mDfEMbRKK0iodg-QfdrXlw_5_0"></a><a id="Tc_fs61Y2OChk6oZrkRhS_mFQ_6_0"></a><a id="Tc_ZiK-7vosykeuzqjRWe8TTA_7_0"></a><a id="Tc_97AFChQyq0iFB7-bksKYXA_8_0"></a><a id="Tc_OZacV4UuYkSWC0SZyFZhsg_9_0"></a><a id="Tc_0xdEjA0AU0e4JUt9-eIOtw_10_0"></a><a id="Tc_eFp8FgQpQEeQjDOYB-J84g_11_0"></a><a id="Tc__Vc8hZ8hk0ewyl4wq6dJ-Q_12_0"></a><a id="Tc_10ZzJG8-jkKZQcxNLuS0Eg_13_0"></a><a id="Tc_omWbAzZEMU66zPz9Sph0ZQ_14_0"></a><a id="Tc_0nCnT4wVD0ey_BM2vhEsdg_15_0"></a><a id="Tc_ljdL_wGsRkGNZXxEYH1LOQ_16_0"></a><a id="Tc_FjnD_rXQ60ej7r9R5Kwhkw_17_0"></a><a id="Tc_eYfypThYQ06IcdTAZ8YPqw_18_0"></a><a id="Tc_VFUDvAcN5UiDApL8OaTXzg_19_0"></a><a id="Tc_MWweJIL8SU-SFaX5gijI0Q_20_0"></a><a id="Tc_Ld3Rpuliq0uguBfYOqOXDA_21_0"></a><a id="Tc_FeZU6I8PBkqhNhbsxkFGXg_21_4"></a><a id="Tc_Z5Q-sKzU_0ybm_milEMwuw_21_9"></a><a id="Tc_fkoekhj7YE6CZttYVfunwA_21_12"></a><a id="Tc_xPWoM8_Nm0aXUwSmE9_xyg_21_15"></a><a id="Tc_ekpz8BlO20SCm2JQ_calgA_21_18"></a><a id="Tc_Sze1Vq84xkGuU5RvIkE7dQ_21_21"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:15.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Redeemable</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Additional</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:15.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">preferred&#160;stock</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:15.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Common&#160;stock</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">paid-in</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retained</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Non-controlling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">stockholders&#8217;</b></p></td></tr><tr><td style="vertical-align:bottom;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Dollars</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Shares</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Dollars</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">capital</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">earnings</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">interests</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.77%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">equity</b></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2019</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_7D-2SpP6JEa2T_Q2D32rkQ_4_2">33,751</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_UHvJrVctbkms5kEAsrAreg_4_5">20,251</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_7eyNLp5PtEWS0PnJwbv0XA_4_7">15,049,608</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_ntGsfqCyA02f7551FhXNfw_4_10">9,029,765</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_EgJEqOrdJUiL7Fjrd38w_Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_6bB1sdzWiUyBWTmO2pzRVQ_4_13">88,356,509</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_JPdJe-Ae6Em7c6Q2FrNNpA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_xiCKb0vAFkGBm8twReR5RA_4_16">66,352,733</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_T-3D9wrDF0KEqPIYbp8ETA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_03kuaSX9M06HHAtSaF8zYg_4_19">14,193,616</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_VsCihQ3KVEuXRpqQEGyPPw_4_22">177,952,874</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of share capital</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Tc_J5zpmKf9cEi3ywup8yTF9w_5_2">6,123</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_NZsM_ozldkyRRPc7Fnxo2Q_5_5">3,674</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Tc_0HfKvD5CsEK-f-aI6-ppRw_5_7">84,610</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_7-UEL7eFE0e7PrHlqnQHHQ_5_10">50,766</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" sign="-" scale="0" id="Tc_FRvc3kiEuUqkv11Q8G4Tzw_5_13">54,440</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_U0CNZm8FHk6L88pNWuYsyQ_5_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_nFCz18675kG93JkrNo8Hvg_5_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_9Xh7CpqhlUmp4k4gyKS5jA_5_22">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Conversion of preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" sign="-" scale="0" id="Tc_XZyA-6y6wU62mzAQoE9Jvw_6_2">9,465</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" sign="-" scale="0" id="Tc_uU65Yyzu-U2vo3rnxo2LFQ_6_5">5,679</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" scale="0" id="Tc_QIjXnomthUS9OTWyJc9N-A_6_7">9,465</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_vEdqhuMgh0q2pgZfmJGgVQ_6_10">5,679</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_inWrq9gd6UacHoUy51Pz_Q_6_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_A1zZ79mbS0aQuHlyTvFawA_6_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_x0kzTx5mFkKS6LMzUBbhXw_6_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_jtH412GD4kKREjjQO5OCFg_6_22">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Buyback of preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodShares" scale="0" id="Tc_e0b8fej1g0OjlS7MeMJGhw_7_2">176</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_Xh-MbRTbyUCSlWqp_PbPNQ_7_5">105</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodShares" scale="0" id="Tc_qgDoD4Fp1Uu4Js40Du-UDg_7_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_0X11E__d0kekYtbo2AW4cA_7_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_wocBNI2KaEuJyAZpqu0Big_7_13">1,623</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_MXBdEjezyUi2nGeWAOTbhw_7_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_s-14THKJ-UOqFxcAveUCFw_7_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_oigYz1TISU6Mb3voYvKqxQ_7_22">1,728</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_tHs9NssPvkCvFCMHfS0ciA_8_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_xuIWQuJf8kmkBPuM56tfWw_8_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_4isRtQyiFkKTJnltqNe5jw_8_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_w7LULyBKak6UVzltXRTVDw_8_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_zkEK-wtxy0SJcZ_2JyzXvQ_8_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_oCQjsHfY3EejvSQe6yGnWQ_8_16">3,711,528</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_gS0t1wzeSE2uscW1BQO7fQ_8_19">730,005</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_48MdwhEbH02YqxUArR8-aQ_8_22">4,441,533</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Exercise of options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_XmQim_b4sk2PW3OnPFYJcQ_9_2">835</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_b8q0LVmKDUy8w0-CC9kQAw_9_5">500</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_h-eRc_kCeUGvdmKBvKdMpA_9_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_53kATl8Zz0WM75Kz2YPeEw_9_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_B91f67Yc6kmncY0rpZn5HA_9_13">9,661</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc__6lxTVOWWkiCqJlnNKzVAw_9_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_Rnb5c7bqGESyLpwFC1Q4dQ_9_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_2zrxCT4xEUml5kzK_Xnl1g_9_22">10,161</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_oflcbZd4r0m6UmOtdP8wjQ_10_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_Hsiip8HJxEGoKUeQ222aHA_10_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_WQAtYx-WAE-wMPo7LwCGTA_10_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_d79tos-wQ0eILGlAyR1elQ_10_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_r7YDX-29IU67nJNUQSdEBA_10_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsCash" scale="0" id="Tc_sFZ64A1kgEyDsDHg-qS6Fg_10_16">5,153,552</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_NvXE3r9cFUW5p2qQ3ED2Ng_10_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsCash" scale="0" id="Tc_lChpQDfrh0qlcG57QTxuAQ_10_22">5,153,552</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Acquisitions of non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:zerodash" name="cwco:PercNonControllingInterestAtAcquisitionDate" scale="0" id="Tc_HxoV_Y_8yUO7N09qXdenRA_11_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:zerodash" name="cwco:PercNonControllingInterestAtAcquisitionDate" scale="0" id="Tc_HeuSOBwclUuMsySq366TLA_11_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="cwco:PercNonControllingInterestAtAcquisitionDate" scale="0" id="Tc_OUTJ_bInEE6ZDmhgfzOeEA_11_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="cwco:PercNonControllingInterestAtAcquisitionDate" scale="0" id="Tc_fSEPYtak_kKfO5eQNlW4BA_11_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:numdotdecimal" name="cwco:PercNonControllingInterestAtAcquisitionDate" sign="-" scale="0" id="Tc_9PPmIYAaeUyegoc2YtsOjQ_11_13">2,579,882</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="cwco:PercNonControllingInterestAtAcquisitionDate" scale="0" id="Tc_wYmv_Y-ZsE6bKGQUKRHQPA_11_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:numdotdecimal" name="cwco:PercNonControllingInterestAtAcquisitionDate" sign="-" scale="0" id="Tc_JIF-rQlCYESOhs2ZdKSntw_11_19">6,820,118</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:PercNonControllingInterestAtAcquisitionDate" sign="-" scale="0" id="Tc_IcqaNtD4vUCUZPWv4zQWbQ_11_22">9,400,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Stock-based compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="INF" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_owMGiWmMMUmYLvmmW7LAqw_12_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_pVxYgNY3tEWmI6OrSBKwKA_12_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="INF" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_GMMSqqUJiE2mXPQ_y8Q1Jw_12_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_p47Aq3J-I02lW3O30Bwd_w_12_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_mMozRiQpu0qbS2X8F0LX3w_12_13">1,163,261</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_noEa-gHnD0-Xbln_E-lVaA_12_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_Hh2ggeSdS0mFVCya1XY0aQ_12_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_8j46ls5MzUqrYc8ugMPwFQ_12_22">1,163,261</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_MK-tLfOlAEild1d-nkvgAA_13_2">31,068</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_qudJzVql50SneKYKlKp2eQ_13_5">18,641</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_xetCI2azjEuMuXnzheF-TA_13_7">15,143,683</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_gpn7WbNJ0ES8b4TyJNyx4A_13_10">9,086,210</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ijhEl3qLT0SfYvzVe8CHrw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_VPSRiwklqEigj5N_FFuoFQ_13_13">86,893,486</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_fPxCCfOb20e5coHSZY-Lsw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_quUvohSZq02-EBxvwCH1Aw_13_16">64,910,709</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_V-5ogwZFlkWHNDZfe_CqzQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_uVvdriWhsUmvVLUGNl9mQg_13_19">8,103,503</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_o1YKOiGow0K251J_c0veeA_13_22">169,012,549</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Issuance of share capital</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Tc_wANwq7G_BEqRpv8m3e-gZA_14_2">8,632</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc__HxrUFFFbUCSrZ35jkIM4g_14_5">5,179</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="Tc_k0G1DhP-1U2J8fsffCOLuA_14_7">88,488</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_5vRv1WQJbkyU4BmpgUVXzA_14_10">53,093</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" sign="-" scale="0" id="Tc_tJ9k9K8yTkyAGJXyAGJT9g_14_13">58,272</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_BhhUUkKXJkuYeDUrWsVGeg_14_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_quyKrV716kuRP58BAo8tFw_14_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="0" id="Tc_0cXrrlrNTESiAcQgy9rZGA_14_22">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Conversion of preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" sign="-" scale="0" id="Tc_4a_BjEehSUqZnIfRSgpFFg_15_2">11,522</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" sign="-" scale="0" id="Tc_hu9OzLQ1U0akHIZQFo_7Ew_15_5">6,913</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" scale="0" id="Tc_8TRijp_a2UGGuwbKxuvAKg_15_7">11,522</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc__NG822LVZk6Ba8ZlfHW3EQ_15_10">6,913</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_E-EwmT4dqk2k0bxTwqayXw_15_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_zRhiEmbBiUycey5nrLz8oQ_15_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_21EpJWapIEqETY3XgvEWrw_15_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="0" id="Tc_wpHejB8VZUGgp21TpG1UxQ_15_22">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Buyback of preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodShares" scale="0" id="Tc_eaXzExhfd0SOwEZYgiT3_A_16_2">1,649</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_CFf-NSftukKFFkF37ML0Qg_16_5">989</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodShares" scale="0" id="Tc_ng7XLeER_k2XB1WmpngYtA_16_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_dYzYyjYQ0kiXKjn9wPKNnA_16_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_-R0Uj4oA9EWDoL7yaDD6UA_16_13">15,810</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_2nPDAZp8TEWvh3YNr2bmnw_16_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:zerodash" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_o3nmdVqzq0KYzYAnVGaAFw_16_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockRedeemedOrCalledDuringPeriodValue" scale="0" id="Tc_9uQ9546lpUC193jpAZns6w_16_22">16,799</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Net income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_jeif0efhLE-i4RGggj0bdw_17_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_3usKyVhuOUWs59-LeblPig_17_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_1G93tWvkK02UXdzFvPqzsA_17_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_m7H4sCVCzk6gbYhRfSqDug_17_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:zerodash" name="us-gaap:ProfitLoss" scale="0" id="Tc_M-VjTrtIn0-L-q-0t95ACQ_17_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_AdkRbDJimEO3z0Dh6ltqEg_17_16">875,579</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_0oW2jgGarE2iD9I7pGggvA_17_19">632,915</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_E_DG2wMIAkCANRv9tuMzKA_17_22">1,508,494</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Exercise of options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_cj8GxZMDxkOuFeLO3VVYDg_18_2">2,106</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_F0IU2ys99UqI-Rnf3NCZAg_18_5">1,263</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc__eV04HgeMkekrZmXUtq8AA_18_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_211d2pBPr0il9KjRqpamJw_18_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_NLlxIOlqbUaocjr7TYFXHA_18_13">15,796</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_uz5vxvvlb0eSuG8RXvTzWQ_18_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_b9M-58erUE-m-MjDdZylJw_18_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="0" id="Tc_cWNWN1kRc0uHFFIcsYRn1A_18_22">17,059</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_8vFns_HysUK6l2tp5FDKsA_19_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_LV987k18ZkCIplpX6BESng_19_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_hrFyc_5NV0OUZfZ2QFVdqw_19_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_TAo2mljvdEC0mA0cNMt-WA_19_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:zerodash" name="us-gaap:DividendsCash" scale="0" id="Tc_vF71LcRt2E24DTaUDJ0A0Q_19_13">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsCash" scale="0" id="Tc_azxLuYgQPE-xqGaQMT_WaQ_19_16">5,183,232</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsCash" scale="0" id="Tc_caPGnh40qESaGD-pLnm17A_19_19">649,880</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsCash" scale="0" id="Tc_H5MUsvd6tkiLo9eiPnJylw_19_22">5,833,112</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:27.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Stock-based compensation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="INF" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_zkSLRIvOrkWiJs_Fw20Xcw_20_2">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_aTFj3y-02kC8g6XWN9hmqw_20_5">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="INF" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_6lbeA3MSGEq2h3FfmbXHYA_20_7">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_N50CQzQ0mEqeZPa8CBnDNA_20_10">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_AibIuA6uQkyN7V0zg6Xs_Q_20_13">977,232</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_EdLHx03lxkatG6gsko9I6A_20_16">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg" decimals="0" format="ixt:zerodash" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_zWJWKRZhBE62vWEwpDblsA_20_19">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="0" id="Tc_f3own5CZ5UGxGsnrnoK8xQ_20_22">977,232</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:27.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_Nnfgxk4hPkmwJWp-ou5FEQ_21_2">28,635</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_Aqmb2m1nqEiQ0huyv5vJBA_21_5">17,181</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="0" id="Tc_uRehl12aAE6lzdL0P_bRNg_21_7">15,243,693</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_8VeDUUvfxkOOYekOiEF-jw_21_10">9,146,216</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_S_EL5XcSjkKEALcifPnf3A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_Smy1Mx_oxU6cHhu1SUh2Cw_21_13">87,812,432</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_qlfRbIlXskGozRKgpAjyQQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_HnxN7Rgy0EOxJq9AeNcKAA_21_16">60,603,056</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_kmcR6mwf2kemN6tjJfw22Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_w9RmSFHlkEuIV2jzUInBSQ_21_19">8,086,538</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.77%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_sQU0r24boEeUCCSYKLc_nQ_21_22">165,665,423</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 12pt 0pt;">The accompanying notes are an integral part of these consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;margin:0pt;"><span style="font-size:0pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">48</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:84%;border:0;margin:30pt 8% 30pt 8%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_373f31d8_e054_4654_b723_63d7297b0c78"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED WATER CO.&#160;LTD.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="CONSOLIDATEDSTATEMENTSOFCASHFLOWS_826826"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt;">CONSOLIDATED STATEMENTS OF CASH FLOWS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_8ede5963_26b9_4df6_af29_e69abe9b151f"></a><a id="Tc_xvi9PwdCi0OLm4IhSXKoLQ_1_2"></a><a id="Tc_Ui-92eb42E2SZA60Y6Zoeg_2_2"></a><a id="Tc_XLDOUiXLZE6kIiZhDEhKuQ_2_5"></a><a id="Tc_RPh6Gl9_QEaBOpp52_yn5A_3_0"></a><a id="Tc_8jl0Ve1vMUCu-jDER-al6g_4_0"></a><a id="Tc_2b0KX5_e0EqSUgEmb9W0Ew_4_2"></a><a id="Tc_iq8Fk2UX-EeXEnbnUJAB8Q_4_5"></a><a id="Tc_xQyhOBn-L0afU3e63JBStw_5_0"></a><a id="Tc_T8oI7tvmcUq1afMREDkbnw_6_0"></a><a id="Tc_gbmVnO1VO06H2TVvsW9nyQ_7_0"></a><a id="Tc_GFbrh83qc0-KWKwlrbpFVA_8_0"></a><a id="Tc_b58Ut5SCf0WwtW90EgIDFw_9_0"></a><a id="Tc_k_Jvypr_Z0-mSiTajqM05Q_10_0"></a><a id="Tc_6pGVkGAIa065MXA65to2ng_11_0"></a><a id="Tc_gWQSkLlaLky7uZJaMD9pyA_12_0"></a><a id="Tc_F0iV1rWHMEmUfM1nJkFQWg_13_0"></a><a id="Tc_h6SZYodshUW-AB5wkpe1WQ_14_0"></a><a id="Tc_HeFIJtxdXkeslk5NsRmX2g_15_0"></a><a id="Tc_kn5Cj0XWmkKkq0NWysO9Ww_16_0"></a><a id="Tc_8hJlRsLb-UCfB7GhCwwqWQ_17_0"></a><a id="Tc_GPz-Tqp_VkGZFDpNplBPIg_18_0"></a><a id="Tc_7iU4YZ4ytkSF7vil1qM94Q_19_0"></a><a id="Tc_1Vl48_Q6dkufNU-0RqX6tQ_20_0"></a><a id="Tc_ySumi3yYv0afvgHAt0ZsJg_20_6"></a><a id="Tc_cUU0EQgi-0aGnOyvyfgiiw_22_0"></a><a id="Tc_Gx428EtB4EWzjFpupinWeg_23_0"></a><a id="Tc_MgUopFay-EGxH2P95FYT7g_24_0"></a><a id="Tc_d3mA9OFTOUOz7Y9k2JbF5w_25_0"></a><a id="Tc_rSqHz5CG70mrkkb4_Y7MfA_26_0"></a><a id="Tc_BnfhdXzL2ESkltWyDlrb-Q_27_0"></a><a id="Tc_Org1diO3eU-aSWlNI2tF-A_27_6"></a><a id="Tc_P_oCNop1r06nVHWdnA3_Xw_28_0"></a><a id="Tc_Myx5KN9TvkOFGId1rQXeFQ_29_0"></a><a id="Tc_UZnODVkMm0u6Sg8jwNXF0w_30_0"></a><a id="Tc_Y4H1tV2MKUe81A1iIIdJTQ_31_0"></a><a id="Tc_itzZsxF_9UuJdM5mAM8WvA_33_0"></a><a id="Tc_7UsHgjcy7EC9z-E6umqIUw_34_0"></a><a id="Tc_nN0fa_PuE0ONYt3IaqTm8A_34_6"></a><a id="Tc_AzIG_EU00UeqyIxEOhJd2Q_35_0"></a><a id="Tc_Gr7oj3Htxke10yyCRphy8g_36_0"></a><a id="Tc_CqWQFNeP9keFdQx0ozxXNA_37_0"></a><a id="Tc_Hxzs1VuT_0CG-Lu1U5i9bg_38_0"></a><a id="Tc_J4v5_ODLMkaUrmeJZ_hOWA_39_0"></a><a id="Tc_ZQuoUlVkTEu4gib4ZLWXXA_41_0"></a><a id="Tc_19ywyy__L0CuKuFQMXpT1w_42_0"></a><a id="Tc_JeRvVt6wREu5jlLLOHO1lw_43_0"></a><a id="Tc_8sz3rDid8UKVdFQY7EqmsA_44_0"></a><a id="Tc_CBTmWEsYH0a2cTiceRCTog_44_6"></a><a id="Tc_ari3iHLAR02tUyR1IgSFRQ_45_0"></a><a id="Tc_nlfvqdeKMEmOBEMCRc_SVg_46_0"></a><a id="Tc_2s-O5TyY00WDHJTc_phuNg_47_0"></a><a id="Tc_F_jNXpZpfkO-kiaoijh1tQ_48_0"></a><a id="Tc_FxYmbCfrMUGY41lXpFs7Iw_49_0"></a><a id="Tc_PD5rmWNkcEqbhB3zQtAF8w_50_0"></a><a id="Tc_hvi3Xbf2Yk2PG_C1TkHxjQ_51_0"></a><a id="Tc_meBaSGYzhEySIguEiXL4Rg_52_0"></a><a id="Tc_l4jXrW7JG0KCNbSIX_zVeA_53_0"></a><a id="Tc_G45BzguqMEegleREKXiArA_53_2"></a><a id="Tc_5u3x8y03Mk28O1wb9Q8peQ_53_5"></a><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash flows from operating activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_tyVbhrc3IE-Q3MPryRdVnQ_4_3">875,579</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_W7UOSZ9diEOnoU7kTWuvTA_4_6">3,711,528</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" sign="-" scale="0" id="Tc_89Z4y-H6CECMXtLwye9n5A_5_3">632,915</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossAttributableToNoncontrollingInterest" sign="-" scale="0" id="Tc__Gigj-ud7kKUlHfmzxQmyQ_5_6">730,005</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net income</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_rd5b8pFqEE2kphloCaG82g_6_3">1,508,494</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProfitLoss" scale="0" id="Tc_1BjjJ9nMVk2R5hG0BvIqOA_6_6">4,441,533</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Adjustments to reconcile net income to net cash provided by operating activities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Impairment loss for Mexico assets - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" scale="0" id="Tc_QWzvRZEa10mgv9huaXhsRw_8_3">963,540</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" scale="0" id="Tc_zOY1d5biX0eqKIkLum4Shg_8_6">3,351,842</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation and amortization - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationAndAmortizationDiscontinuedOperations" scale="0" id="Tc_CGPUhkaQfU-5AWTnJLZhtQ_9_3">4,545</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationAndAmortizationDiscontinuedOperations" scale="0" id="Tc_nIsoZBK0SU27zPuQcX3KcQ_9_6">4,545</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Foreign currency transaction adjustment - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" sign="-" scale="0" id="Tc_wzkNuIGbukKtPOR9wDmhDA_10_3">53,039</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" sign="-" scale="0" id="Tc_k5Us0j1Ct0i1Q3-GtEQ-Uw_10_6">3,528</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" sign="-" scale="0" id="Tc_bv6RMCGlbUyGmTRbY886_w_11_3">1,552,955</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" sign="-" scale="0" id="Tc_kusYZq5rd0WJef2U_0K3xA_11_6">1,542,328</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation and amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationAndAmortization" scale="0" id="Tc__xdLthAe3EarHqjazYLomA_12_3">6,921,233</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationAndAmortization" scale="0" id="Tc_SqJxUmZVTkm_4hPbBjoI4A_12_6">7,406,509</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Deferred income tax benefit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_T3ZN6lNGrUChuinvXYETyw_13_3">204,086</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_wdAZHWCdpUuqyKky7FjSeA_13_6">221,829</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Provision for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:zerodash" name="us-gaap:ProvisionForLoanAndLeaseLosses" scale="0" id="Tc_9CMFv7GlNU2BuziVJPViIw_14_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProvisionForLoanAndLeaseLosses" scale="0" id="Tc_bBtwumnPi0iFac_8i_O-hA_14_6">129,107</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Unrealized (gain) loss on net put/call option</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:UnrealizedGainLossOnDerivatives" scale="0" id="Tc_QpT7nU46TE6t3vRs4sVHtw_15_3">818,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:UnrealizedGainLossOnDerivatives" sign="-" scale="0" id="Tc_SWWCA0eCoEWg4GjQ4Kn6aQ_15_6">26,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Compensation expense relating to stock and stock option grants</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="0" id="Tc_rkO9TTVqQUWek63xr6XvXg_16_3">977,232</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="0" id="Tc__U7h-fFMQ0yKElMKKMakSg_16_6">1,163,261</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Loss (gain) on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnDispositionOfAssets1" sign="-" scale="0" id="Tc_KeO4paFLHk6aEasFEBjoFg_17_3">245,836</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnDispositionOfAssets1" scale="0" id="Tc_Q6fPEIQIYEGJDK9ndGLJsg_17_6">13,997</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Profit-sharing and equity in earnings of OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" scale="0" id="Tc_r0qjmCzHE02AIb1hbQKXEA_18_3">78,259</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" scale="0" id="Tc_isP-L2fnjEO4K6UnjZNigA_18_6">506,694</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Distribution of earnings from OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" id="Tc_YcwodAVtuU2QIP8q9h8iqA_19_3">454,500</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestmentDividendsOrDistributions" scale="0" id="Tc_doGQZYizf0yQSEOpQAOvTQ_19_6">318,150</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Impairment of goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GoodwillImpairmentLoss" scale="0" id="Tc_Xz29rE0CQkGDmIXCuLGe2A_20_3">2,900,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Change in:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable and contract assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" scale="0" id="Tc_CwDRiAQ-OESXpX04moBb0A_23_3">5,878,771</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" sign="-" scale="0" id="Tc_phql0XelEE21aWVjl6Ucsg_23_6">2,541,096</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" sign="-" scale="0" id="Tc_Tj55pBioBECGFn4IxR-Sxg_24_3">293,254</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" scale="0" id="Tc_g556ImKzL0Gn1I6FmVxrQw_24_6">102,551</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses and other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" id="Tc_AF0MlJE01ka-j6gefHEEng_25_3">711,615</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" id="Tc_dVL51D2NMkmSv7J5zIAkTQ_25_6">629,734</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Accounts payable (including related parties), accrued expenses and other current liabilities, and contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" sign="-" scale="0" id="Tc_UX0vKCifOkmMFQ6fYQBOhw_26_3">112,598</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" sign="-" scale="0" id="Tc_9hkSjKnkcU-eSKeHm_CmFw_26_6">480,456</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInOperatingLiabilities" scale="0" id="Tc_tfRioITLyESR13Kt6rqE7A_27_3">48,593</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="0" id="Tc_LiSQ17ehl0qNJmNobUY1GA_28_3">467,710</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInDeferredRevenue" sign="-" scale="0" id="Tc_wT2J9OMP5Ui0EBDGdOijQA_28_6">1,700</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net cash provided by operating activities - continuing operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" scale="0" id="Tc_0nYoN2e3PUWXMbhSvBsLuQ_29_3">8,587,602</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" scale="0" id="Tc_KVcVH9dwG0qBwfFq25bnUQ_29_6">18,970,938</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net cash used in operating activities - discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" sign="-" scale="0" id="Tc_xE-IhY6uMk2CxoosOh3HxQ_30_3">1,621,292</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" sign="-" scale="0" id="Tc_WO-GjnClCUKp4coUAQbstA_30_6">1,635,646</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net cash provided by operating activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" id="Tc_UnRKFhnRLEWnGUHWxHaUSw_31_3">6,966,310</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" id="Tc_1s4uiwjTmUWXPauPxgAR-w_31_6">17,335,292</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash flows from investing activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Purchase of certificate of deposit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:PaymentsToAcquireCertificatesOfDeposit" scale="0" id="Tc_uOW7oiDsREiSgAwiJDV9FQ_34_3">2,500,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Additions to property, plant and equipment and construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" id="Tc_SD_6YQfSBU-Mht9x9jAolA_35_3">1,490,012</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" id="Tc_ZhfJSvTY-kiJqotkw0tVHw_35_6">1,728,393</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Proceeds from asset dispositions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="0" id="Tc_6IXK6xF0ekms-meO-KJcuQ_36_3">45,560</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="0" id="Tc_g9lPhrHuO0atN46BSUDKrQ_36_6">8,638</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Purchase of non-controlling interest in Aerex</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_JfcwYyBEakO8TFxMeFrvMA" decimals="0" format="ixt:zerodash" name="us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries" scale="0" id="Tc_cxVbhlT-_0OrHKnofFvZcA_37_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_IqB3OicrFkeiNIeeIjR-Uw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries" scale="0" id="Tc_Ngq_6N674UapHwCRbuYDuQ_37_6">8,500,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Purchase of non-controlling interest in PERC</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_-yZiGEh88k22O15lfBATRw" decimals="0" format="ixt:zerodash" name="us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries" scale="0" id="Tc_z9pV9K90WEOyUBc7aV99LQ_38_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_MMJbH0DeKk6fK9CLog1cSg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries" scale="0" id="Tc_BW1exsePdkWwbNZfRtFO_g_38_6">900,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net cash used in investing activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="0" id="Tc_D6sR8gUSPUya4_O6wUNGLA_39_3">3,944,452</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" sign="-" scale="0" id="Tc_e6lLyMQyZkqtd-F_c7upzg_39_6">11,119,755</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash flows from financing activities</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends paid to common shareholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfDividendsCommonStock" scale="0" id="Tc_JTKOzDGatkKVm4lTTgz1jg_42_3">5,151,667</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfDividendsCommonStock" scale="0" id="Tc_r99oQKKHF0WrtZ9H3jg5VA_42_6">5,133,727</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends paid to preferred shareholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock" scale="0" id="Tc_cvwLb96UlEC54np8s-uu2Q_43_3">11,015</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock" scale="0" id="Tc_Xy3HcY_ZnU6uA8BnX6w7Yw_43_6">11,990</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Dividends paid to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PaymentsToMinorityShareholders" scale="0" id="Tc_W3fCPQC440ep4aEcmBdwBw_44_3">649,880</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Repurchase of redeemable preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock" sign="-" scale="0" id="Tc_pK4R09WPxkmU-RPtuO2EMA_45_3">16,799</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock" sign="-" scale="0" id="Tc_k5KvudtLLEe0rW1autpC9g_45_6">1,728</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Proceeds received from exercise of stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="0" id="Tc_AuNAZUTkRECqUEdhQ863fw_46_3">17,059</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromStockOptionsExercised" scale="0" id="Tc_Cjw6OT8_X0SXFI8-Ah9m4Q_46_6">10,161</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">Principal repayments on long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfLongTermDebt" scale="0" id="Tc_9Oxbbz9NqEC6C8p-Aj164Q_47_3">49,729</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfLongTermDebt" scale="0" id="Tc_z11q_8weBkeXrb_i48ie6A_47_6">32,642</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net cash used in financing activities </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="0" id="Tc_DyJooMZQZkqnCFN03HlYwg_48_3">5,862,031</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" sign="-" scale="0" id="Tc_87YcPb1I1EOGfL_pPp6EFQ_48_6">5,169,926</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:middle;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net (decrease) increase in cash and cash equivalents</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" sign="-" scale="0" id="Tc_HiD_SD3_30ihnZXyu1bOuA_49_3">2,840,173</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" scale="0" id="Tc_wdoD8NcrL0-lfZvursxj6g_49_6">1,045,611</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash and cash equivalents at beginning of period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" id="Tc_9xirQr9MZkCgQYzgzGzGEg_50_3">43,794,150</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" id="Tc_22-VHvnh5EaHvQ938n8hXQ_50_6">42,071,083</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash and cash equivalents at beginning of period - discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" id="Tc_NMVnL4-_NkCYEDLRNjJXJA_51_3">154,130</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" id="Tc_XbPWQXCXlUqJRFXQrmfBKA_51_6">831,586</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Less: cash and cash equivalents at end of period - discontinued operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" id="Tc_ovVEbX_xoEmzazJe-L_vBQ_52_3">750,048</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" id="Tc_u8UwxANWDUecZnCDeuk4rQ_52_6">154,130</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash and cash equivalents at end of period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" id="Tc_ir0xOxSRSUaVjUY8MtEBsA_53_3">40,358,059</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="0" id="Tc_jp5l1Qk2KU-UgtjxP6famQ_53_6">43,794,150</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:73.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;">The accompanying notes are an integral part of these consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">49</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt 0pt 12pt 0pt;">CONSOLIDATED WATER CO.&#160;LTD.</p><a id="NOTESTOCONSOLIDATEDFINANCIALSTATEMENTS_2"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:center;margin:0pt 0pt 12pt 0pt;">NOTES&#160;TO CONSOLIDATED FINANCIAL STATEMENTS</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:NatureOfOperations" id="Tb_WsKgQSLpWUaA1rwWZqjDzA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">1. Principal activity</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Consolidated Water Co. Ltd. and its subsidiaries (collectively, the &#8220;Company&#8221;) supply potable water, treat water for reuse and provide water-related products and services to customers in the Cayman Islands, The Bahamas, the United States and the British Virgin Islands. The Company produces potable water from seawater using reverse osmosis technology and sells this water to a variety of customers, including public utilities, commercial and tourist properties, residential properties and government facilities. The Company designs, builds and sells water production and water treatment infrastructure and manages water infrastructure for commercial and governmental customers. The Company also manufactures a wide range of specialized and custom water industry related products and provides design, engineering, operating and other services applicable to commercial, municipal and industrial water production, supply and treatment.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="Tb_K5Uim_6Zh068y9a6e1eOBw" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">2. Accounting policies</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="Tb_to_NzJ4hX0CBCzVdDEn5iQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of preparation:</b> The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:UseOfEstimates" id="Tb_Im48kwj7uEuizSPwUheevw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Use of estimates:</b> The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Significant items subject to estimates and assumptions include the carrying value of property, plant and equipment, intangible assets, goodwill and put/call options. Actual results could differ significantly from such estimates.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ConsolidationPolicyTextBlock" id="Tb_qAxdohxVPkK6Po3l6HsCFg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of consolidation:</b> The accompanying consolidated financial statements include the accounts of the Company&#8217;s (i)&#160;wholly-owned subsidiaries, Aerex Industries,&#160;Inc. (&#8220;Aerex&#8221;), Aquilex,&#160;Inc. (&#8220;Aquilex&#8221;), Cayman Water Company Limited (&#8220;Cayman Water&#8221;), Ocean Conversion (Cayman) Limited (&#8220;OC-Cayman&#8221;), DesalCo Limited (&#8220;DesalCo&#8221;), Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), Consolidated Water U.S. Holdings,&#160;Inc. (&#8220;CW-Holdings&#8221;); and (ii)&#160;majority-owned subsidiaries Consolidated Water (Bahamas)&#160;Ltd. (&#8220;CW-Bahamas&#8221;), N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;), and PERC Water Corporation (&quot;PERC&quot;). The Company&#8217;s investment in its affiliate Ocean Conversion (BVI)&#160;Ltd. (&#8220;OC-BVI&#8221;) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">On January 24, 2020, as a result of CW-Holdings&#39; exercise of a call option, CW-Holdings purchased the remaining&#160;</span><span style="background:#ffffff;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_1_24_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_-rAQ5puBFEGgq1eq5MMXmA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2" id="Narr_fdQOxWgIv0CfUPKrLmRgKw">49</ix:nonFraction>%</span><span style="background:#ffffff;"> ownership interest in Aerex for </span><span style="background:#ffffff;">$<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_24_2020_To_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_DfTzkZcxR0iDw2oJVTFipQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationConsiderationTransferred1" scale="0" id="Narr_xkNylLXEu0-dEI2pEdCh8A">8,500,000</ix:nonFraction></span><span style="background:#ffffff;">&#160;in cash. After giving effect to this purchase, CW-Holdings owns&#160;</span><span style="background:#ffffff;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_tok_x6VAPUmD3EIwXExBnA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:MinorityInterestOwnershipPercentageByParent" scale="-2" id="Narr_cY760S7iUUukcqZw-2Ywsg">100</ix:nonFraction>%</span><span style="background:#ffffff;"> of the outstanding capital stock of Aerex. On August 11, 2020, CW-Holdings purchased an additional&#160;</span><span style="background:#ffffff;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_8_11_2020_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_fVPx_MibB0OMJNw6Y5r5GQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired" scale="-2" id="Narr_NFMkpaCgYka1HRdyu20t0g">10</ix:nonFraction>%</span><span style="background:#ffffff;"> of the ownership of PERC for </span><span style="background:#ffffff;">$<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_8_11_2020_To_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_2IXccD9r5kG85vF-cpFJhQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:BusinessCombinationConsiderationTransferred1" scale="0" id="Narr_IgQZeE3AxEWTgLTj16SXTw">900,000</ix:nonFraction></span><span style="background:#ffffff;">, increasing its ownership of this subsidiary to&#160;</span><span style="background:#ffffff;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_SmEMh4cxdEiHJigWEhXVQg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:MinorityInterestOwnershipPercentageByParent" scale="-2" id="Narr_XNoj-dbZp0ewn6XlfjL4_w">61</ix:nonFraction>%</span><span style="background:#ffffff;">.</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="Tb_tKrHZ-1R4kq47b2VGqzpRw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Foreign currency:</b>&#160;The Company&#8217;s reporting currency is the United States dollar (&#8220;US$&#8221;). The functional currency of the Company and its subsidiaries (other than NSC, AdR and CW-Cooperatief) is the currency for each respective country. The functional currency for NSC, AdR and CW-Cooperatief is the US$. NSC and AdR conduct business in US$ and Mexican pesos and CW-Cooperatief conducts business in US$ and euros. The exchange rates for the Cayman Islands dollar and the Bahamian dollar are fixed to the US$. The exchange rates for conversion of Mexican pesos and euros into US$ vary based upon market conditions. Net foreign currency gains arising from transactions and re-measurements were $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="0" id="Narr_AXo9N0Geq0W1gNeq2p6x_Q">32,594</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="0" id="Narr_918Q324UW0CAQdzalcYvpg">68,818</ix:nonFraction> for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and are included in &#8220;Other income (expense)&#160;- Other&#8221; in the accompanying consolidated statements of income.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="Tb_RcjrfE0C8EmpzFPnGMrIJA" continuedAt="Tb_RcjrfE0C8EmpzFPnGMrIJA_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Cash and cash equivalents:</b> Cash and cash equivalents consist of demand deposits at banks and highly liquid deposits at banks with an original maturity of three&#160;months or less. Cash and cash equivalents as of December&#160;31, 2021 and 2020 </p></ix:nonNumeric></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">50</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont1" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont2"><ix:continuation id="Tb_RcjrfE0C8EmpzFPnGMrIJA_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">include $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="6" id="Narr_aBhzXoqdjkeGo0Yb72BzbQ">7.4</ix:nonFraction> million and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_VljHS7TLeEuM1EZJT4Aegw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="6" id="Narr_PsPGrkNZ4EeJhjIN7vLv1g">8.5</ix:nonFraction> million, respectively, of certificates of deposits with an original maturity of three&#160;months or less.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:CashUninsuredAmount" scale="6" id="Narr_33fr4dqRcUG5XLQb3wBkzQ">7.8</ix:nonFraction> million. As of December&#160;31, 2021, the Company held cash in foreign bank accounts of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="-5" format="ixt:numdotdecimal" name="cwco:CashAndRestrictedCashEquivalentsHeldInForeignBank" scale="6" id="Narr_jB0Qka9yYEGJTnR7kEeXpA">33.1</ix:nonFraction> million, which includes a $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ" decimals="-5" format="ixt:numdotdecimal" name="cwco:DepositsHeldInForeignBank" scale="6" id="Narr_I_DkJkOqSUmTV4hYI2hY5Q">2.5</ix:nonFraction> million certificate of deposit with an original maturity of six months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Certain transfers from the Company&#8217;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. As of December&#160;31, 2021, the equivalent United States dollar cash balances for deposits held in The Bahamas were approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="-5" format="ixt:numdotdecimal" name="cwco:DepositsHeldInForeignBank" scale="6" id="Narr_3xkTegBvZ0ayQoFtaxkL6g">6.4</ix:nonFraction> million.</p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:TradeAndOtherAccountsReceivablePolicy" id="Tb_wb2xeYc6Tk6CRNWhbqeNoQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Accounts receivable and allowance for doubtful accounts:</b> Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. <span style="background:#ffffff;">Trade accounts receivable also represent our unconditional right, subject only to the passage of time, to receive consideration arising from our performance under contracts with customers. Trade accounts receivable include amounts billed and billable on construction contracts, service and maintenance contracts and contracts for the sale of goods. Billed contract receivables have been invoiced to customers based on contracted amounts. </span>The allowance for doubtful accounts is the Company&#8217;s best estimate of the amount of probable credit losses in the Company&#8217;s existing accounts receivable balance. The Company determines the allowance for doubtful accounts based on historical write-off experience and&#160;monthly review of delinquent accounts. Past due balances are reviewed individually for collectability and disconnection. Account balances are charged off against the allowance for doubtful accounts after all means of collection have been exhausted and the potential for recovery is considered by management to be remote. </p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:InventoryPolicyTextBlock" id="Tb_HuKVkSojnkWDo7ZUTrcfUw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Inventory:</b> Inventory primarily includes consumables stock and spare parts stock that are valued at cost, less an allowance for obsolescence, with cost determined on the first-in, first-out basis. Inventory also includes potable water held in the Company&#8217;s reservoirs. The carrying amount of the water inventory is the lower of the average cost of producing water during the&#160;year or its net realizable value.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="Tb_umSbwaQelUOpLO87Rqh-EQ" continuedAt="Tb_umSbwaQelUOpLO87Rqh-EQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;background:#ffffff;">Contract assets and liabilities</b><span style="background:#ffffff;">: Billing practices for the Company&#8217;s contracts are governed by the contract terms of each project based upon costs incurred, achievement of milestones or predetermined schedules. Billings do not necessarily correlate with revenue recognized over time using the direct inputs method of accounting. </span>The Company records contract assets and contract liabilities to account for these differences in timing.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;">Contract assets, which include costs and estimated earnings in excess of billings on uncompleted contracts, arise when the Company recognizes revenue for services performed under its construction and manufacturing contracts, but the Company is not yet entitled to bill the customer under the terms of the contract. Contract liabilities, which include billings in excess of costs and estimated earnings on uncompleted contracts, represent the Company&#39;s obligation to transfer goods or services to a customer for which the Company has been paid by the customer or for which the Company has billed the customer under the terms of the contract. Revenue for future services reflected in this account are recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts are typically resolved within one year and are not <span style="background:#ffffff;">considered</span> significant financing components.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company considers retention that is withheld on progress billings as not creating an unconditional right to payment until contractual milestones are reached (typically substantial completion). Accordingly, withheld retention is considered a component of contracts assets and liabilities until finally billed to the customer, when obligations have been satisfied and the right to receipt is subject only to the passage of time. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company&#8217;s contract assets and liabilities are reported in a net asset or liability position on a contract-by-contract basis at the end of each reporting period. The Company classifies contract assets and liabilities related to construction and manufacturing contracts in current assets and current liabilities as they will be liquidated in the normal course of contract completion, although this may require more than one year.</span></p></ix:nonNumeric></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">51</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_EcED--3hc0qrGE9I6C6KDA_1_0"></a><a id="Tc_tR5N7FGW6kKEcUOYjJlNfg_1_2"></a><a id="Tc_v8PuZ1Lrz026ApLt2636fg_2_0"></a><a id="Tc_Xkvir9Gn4UmQgvlHcqtRBw_2_2"></a><a id="Tc_L9FkOYK_v0C2neyP5PZUJg_3_0"></a><a id="Tc_rhsioKRIhEyZZBE5uPNjPA_3_2"></a><a id="Tc_Ngpt9VAFwkW0rUJ6kl0WoQ_4_0"></a><a id="Tc_1k7H6yR4YUWvlMG7sArweQ_4_2"></a><a id="Tc_JwAiMl0LS0m9Y9HEQoOBtA_5_0"></a><a id="Tc_qUeb-XTE00mInx-trgpyTA_5_2"></a><a id="Tc_4V1mow-g-0-rX8j1xICSSw_6_0"></a><a id="Tc_dsAT_2nMsECn-ExRa6VCCA_7_0"></a><a id="Tc_Xb6V7-QJakSorHEJm2My_g_7_2"></a><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont2" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont3"><ix:continuation id="Tb_umSbwaQelUOpLO87Rqh-EQ_cont1"></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="Tb_wjzYq-87a0-oMUCRMMNe3A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Property, plant and equipment, net:</b> Property, plant and equipment is stated at cost less accumulated depreciation. Depreciation is calculated using a straight-line method with an allowance for estimated residual values. Rates are determined based on the estimated useful lives of the assets as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" id="Group_ltchrnANDE2RGvbOD_6ehw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_mPCZyqRXKESTHEJKQCVz5w" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_hswam_S5zkGy6yCkkInONQ">5</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_RVivlKCJXEabYE5QT8FPkw">40 years</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_i92QTmrbHUqKBE4qYPwHUA" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_qykfpn0mfUqNjJ48dP1Iaw">4</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_iogff4S0CkCSVSIW9dOHTg" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_SQRbrI6TWUqUedos38AcZw">40 years</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_jTY0y4r--EiEXAMHb_nZmQ" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_FQ9M4AvGAUCDfxKxgpYMxA">3</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_nYfiDmZ6Rk2oUCZAEVttNA" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_Xf8U2pxDhEWEL6T4rWbwwA">40 years</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_mSY5_CCAL0e-_eMIRkbUVA" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_ncdsSXBBhUqo7r9ha0bw7w">3</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_K3Ihq-TdDE-ZGSnge38sEg" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_NrPI9TsRJUmCRq4tUZrgfQ">10 years</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_GMVJ3-rPmkeyPiPWP9NqWw" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_I2bBWKjuzUiWRAQMJeU_BQ">3</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_d9ohEbz4BkOGpyBII32Zkg" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_5GznRZmGV0630Aj8UqciSA">10 years</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_ErvLwk13nkiO2-V7OOxtFw" name="us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives" id="Tc_B1bOL3rP7EamsuiSUoW3aw_6_2">Shorter of 5 years or lease term</ix:nonNumeric></p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_Ss0z-whZYUSJvevcASK4_w" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_PxspDoacX0-OMxXUJZ5QnA">5</ix:nonNumeric> to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_eczvaTabWUGDHmHOXgGznw" format="ixt-sec:durwordsen" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Narr_QTdw-i-Fz06OjDglIU_DaQ">10 years</ix:nonNumeric></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the&#160;month the asset is placed in service. Additions to construction in progress are comprised of the cost of the contracted services, direct labor and materials.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Interest costs directly attributable to the acquisition and construction of qualifying assets, which are assets that necessarily take a substantial amount of time to be ready for their intended use, are added to the cost of those assets until such time as the assets are substantially ready for use. <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt-sec:numwordsen" name="us-gaap:InterestCostsCapitalized" scale="0" id="Narr_TeR3jkD-aEehKXT6g-mc_Q"><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt-sec:numwordsen" name="us-gaap:InterestCostsCapitalized" scale="0" id="Narr_wNMeU8LXDUiUB4lGruAlaQ">No</ix:nonFraction></ix:nonFraction> interest was capitalized during the years ended December 31, 2021 or 2020.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="Tb_YqtXPSAOpUKdoFcFvluFPw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Long-lived assets:</b> Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, the Company recognizes an impairment loss only if their carrying amounts are not recoverable through their undiscounted cash flows and measures the impairment loss based on the difference between the carrying amounts and estimated fair values.</p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock" id="Tb_jaGQNAtYUU2laFwcEQ_WeQ" continuedAt="Tb_jaGQNAtYUU2laFwcEQ_WeQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Goodwill and intangible assets:</b> Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. The Company evaluates the possible impairment of goodwill annually as part of its reporting process for the fourth quarter of each fiscal&#160;year. Management identifies the Company&#8217;s reporting units, which consist of &#160;retail, bulk, services, and manufacturing, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. The Company determines the fair value of each reporting unit and compares the fair value to the carrying amount of the reporting unit. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the&#160;years ended December&#160;31, 2021 and 2020, the Company estimated the fair value of its reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company also estimated the fair value of each of it reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company weighted the fair values estimated for each of its reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings the Company </p></ix:nonNumeric></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">52</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont3" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont4"><ix:continuation id="Tb_jaGQNAtYUU2laFwcEQ_WeQ_cont1" continuedAt="Tb_jaGQNAtYUU2laFwcEQ_WeQ_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">applied to each method for the years ended December&#160;31, 2021 and 2020 were <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_yvJMcp0hA0qqmEZprPv3dw" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_cE-KZV6CLEmsI3CAZuTx3Q">80</ix:nonFraction>% to the discounted cash flow method and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_D1lthUdJE0ycaWtJ1ICfmw" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_08RbqM7plUiitTQKKevLSA">20</ix:nonFraction>% to the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair values the Company estimated for its retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_VbMrtFWII0GQVVTz5_0fKQ">32</ix:nonFraction>%, <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_F1pHXOzejE6hYAOkw6MZSg">51</ix:nonFraction>%, <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_i8EB5XO9C0WvsCsMEKHxWQ">15</ix:nonFraction>%, and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_gxY1lNcMhUKV-e1BnbH6Ng">15</ix:nonFraction>% respectively, as of December 31, 2021. The fair values the Company estimated for its retail, bulk, and services reporting units exceeded their carrying amounts by <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_Bz0X7WbjZUqwn1U-AY4i-g">101</ix:nonFraction>%, <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_qiMg53y2OEqq-1WIWmloHA">49</ix:nonFraction>% and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_WcAcjFejOUioAjMuNPBu_w">17</ix:nonFraction>%, respectively, as of December 31, 2020. While the fair value the Company estimated for its manufacturing reporting unit exceeded its carrying value by <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_T9c7QQ6bbECMsxPvR9sXkg">31</ix:nonFraction>% as of December 31, 2020, due to new information the Company obtained in 2021, the Company was required to record an impairment loss for its manufacturing reporting unit&#8217;s goodwill in 2021, as discussed in paragraphs that follow.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Approximately <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Gkceb99m70Oqnxt1VxUgeQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_kS2HbJ2g7ECE_3Qqngz4pA">80</ix:nonFraction>% of Aerex&#8217;s revenue, and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_GrossProfitMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_kuRK6cbUnkOldkSTsMCAJA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="Narr_N_Wgh4J0IkiyaCGFEVEZ9Q">89</ix:nonFraction>% of Aerex&#8217;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to <ix:nonFraction unitRef="Unit_Standard_customer_eNCDyeI8C0-i-NfyoLXf-A" contextRef="As_Of_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember__u3VSfhz50eP9mBQI9RtAg" decimals="0" format="ixt-sec:numwordsen" name="cwco:NumberOfCustomers" scale="0" id="Narr_KRXoJiwe90a_vzbWobotAA">one</ix:nonFraction> customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, the Company updated its projections for its manufacturing reporting unit&#8217;s future cash flows. Such projections assumed, in part, that Aerex&#8217;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, the Company tested its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_3FbK4qa0gke44tgFa-BN6g" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_BZ04mxiSAUCY_DOz1k6Ogg">80</ix:nonFraction>% and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_W-NwYGTack6NuMLbCHpXdg" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_Dv4PBG51cUaAKR6WZvELmw">20</ix:nonFraction>% applied to these two methods, respectively. As a result of these impairment tests, the Company determined that the estimated fair value of its manufacturing reporting unit exceeded its carrying value by approximately <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_flNc029GBU22Huob_tWcGA">31</ix:nonFraction>% as of December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years. The Company&#8217;s updated sales estimate for this customer based on this new information was substantially below the sales the Company anticipated to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections the Company prepared for purposes of testing its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020. Aerex&#8217;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by continuing negative economic conditions, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, the Company believes, also adversely affected the overall financial condition of Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer, and present weak economic conditions that the Company believes will continue into 2022, the Company updated its projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_d0Dsq74pMUqS5aSJqpup_Q" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_j70BqCSGAkS7mspn5F882Q">80</ix:nonFraction>% and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_sLkepPeG70KqKTgr9Pcu4w" decimals="2" format="ixt:numdotdecimal" name="cwco:EstimatedFairValuePercentageSegmentReportingInformation" scale="-2" id="Narr_K_Af_Mgmv0KngJbVYuqtuA">20</ix:nonFraction>% applied to these two methods, respectively. Based upon this testing, the Company determined that the carrying value of its manufacturing reporting unit exceeded its fair value by $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_6_1_2021_To_6_30_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_oszWfLjlvEq5bax8GUqm3Q" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:GoodwillImpairmentLoss" scale="6" id="Narr_QwTf7k9lb0ubpkklT9mMzg">2.9</ix:nonFraction> million, and the Company recorded an impairment loss to reduce its manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s manufacturing reporting unit exceeded its carrying value by only <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_5yj8uCvmxEisBUbULN8DCQ" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_tHIaDisIa0agK9Gj6SmWWw">15</ix:nonFraction>%. If the Company determines in the future that Aerex&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of its manufacturing reporting unit&#8217;s goodwill of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Narr_bmIYB3Ygtke6yzsnysvN0Q">1,985,211</ix:nonFraction> and its remaining unamortized intangible assets balances of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Narr_ykDdRywQ8kmJV0EiKI_I1g">847,778</ix:nonFraction> recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s services reporting unit exceeded its carrying value by only <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_YxR91NTNuUm49PPfDJS35g" decimals="0" format="ixt:numdotdecimal" name="cwco:EstimatedFairValueCarryingAmountExceededPercentage" scale="0" id="Narr_G89G4oeRN0C_kvz_S3H7WA">15</ix:nonFraction>%. If the Company determines in the future that PERC&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of its services reporting unit&#8217;s goodwill of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Narr_MhcxvvyFkUKGNioUEkblug">5,320,416</ix:nonFraction> and its </p></ix:continuation></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">53</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_7ddec317_298f_4f14_a10b_718b87f6bada"></a><a id="Tc_BV7t1_X7C0CzLW2sL2XBjw_1_2"></a><a id="Tc_crpDSVLqmEuZR_-g5Qikgg_2_2"></a><a id="Tc_4E0Yeog31kGd5yAxYfsCew_2_5"></a><a id="Tc_EJftvZpv6Uaaixdczjy8Hw_3_0"></a><a id="Tc_zu700Bh0tEKkI8aI5f5SmQ_3_2"></a><a id="Tc_ViOHLw0h_UOvbpyxFFGFVg_3_5"></a><a id="Tc_xcqp2c5cgEu6ofMr1Kmb4w_4_0"></a><a id="Tc_M_HX6LR0P0qI9CCeINzZwQ_5_0"></a><a id="Tc_5Q7sJ4M3K0e_KOMHIYTNYg_6_0"></a><a id="Tc_GeuAq0ZbD0qgeVOykx34_A_7_0"></a><a id="Tc_9dZrxgPzHUSvlAyqFtl6sQ_7_2"></a><a id="Tc_Qi7EnUY9BU6PiVBkcNj7qg_7_5"></a><a id="_Hlk99020587"></a><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont4" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont5"><ix:continuation id="Tb_jaGQNAtYUU2laFwcEQ_WeQ_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">remaining unamortized intangible assets balances of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Narr_xyHZuFs-v0akAQUa2p0ggA">2,553,888</ix:nonFraction> recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:InvestmentPolicyTextBlock" id="Tb_n5qVLzS4zUaietF0thSOzA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Investments:</b> <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:CriteriaForRecognizingInvestmentAtCost" id="Narr_R8bXjGby0EyEs7xAI57slg">Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost.</ix:nonNumeric> <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:EquityMethodInvestmentAdditionalInformation" id="Narr_g72VdUqASEOlrMw93b4ySw">The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation.</ix:nonNumeric> The Company recognizes impairment losses on declines in the fair value of the stock of investees that are other than temporary.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:OtherAssetsPolicyTextBlock" id="Tb_ieS7z5q020CyizikuKwkxw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Other assets:</b> Under the terms of CW-Bahamas&#8217; contract with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;) to supply water from its Blue Hills desalination plant, CW-Bahamas was required to reduce the amount of water lost by the public water distribution system on New Providence Island, The Bahamas, over a one-year period by <ix:nonFraction unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="-6" format="ixt:numdotdecimal" name="cwco:AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" scale="6" id="Narr_AFZ0IEn-7EyUKhSroZPUFA">438</ix:nonFraction> million gallons, a requirement CW-Bahamas met during 2007. The Company was solely responsible for the engineering, labor and materials costs incurred to reduce the amount of lost water, which were capitalized and are being amortized on a straight-line basis over the original remaining life of the Blue Hills contract. Such costs are included in other assets and aggregated approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_RIhkjGOXukmM43EDG9ye3w" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OtherAssets" scale="6" id="Narr_JJk_iq120USF4k_rwUnTYQ"><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_4nkKVq63Ok2x-GMwgdgt-g" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OtherAssets" scale="6" id="Narr_VxVwTcRmRkGIIk0x5gf4GA">3.5</ix:nonFraction></ix:nonFraction> million as of December&#160;31, 2021 and 2020. Accumulated amortization for these costs was approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccumulatedAmortizationOfOtherDeferredCosts" scale="6" id="Narr_QZQUPuCuKECA-JuCHKgxVg">2.7</ix:nonFraction> million and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccumulatedAmortizationOfOtherDeferredCosts" scale="6" id="Narr_hw4sP1aXb0-szbAGASayBA">2.5</ix:nonFraction> million as of December&#160;31, 2021 and 2020, respectively. Amortization expense for these costs was $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherAmortizationOfDeferredCharges" scale="0" id="Narr_vUO_VklzAE6hY7q0FzkQ5g"><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OtherAmortizationOfDeferredCharges" scale="0" id="Narr_XptJfzSiUU-Mpy9kQoLdiQ">179,353</ix:nonFraction></ix:nonFraction> for the&#160;years ended December&#160;31, 2021 and 2020.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:IncomeTaxPolicyTextBlock" id="Tb_iWKQHHhbjkmXGV-F4iySlQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Income taxes:</b> The Company accounts for the income taxes arising from the operations of its United States subsidiaries under the asset and liability method. Deferred tax assets and liabilities, if any, are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the&#160;years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to the extent any deferred tax asset may not be realized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company is not presently subject to income taxes in the other countries in which it operates.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:RevenueRecognitionPolicyTextBlock" id="Tb_ra6zbFaEVE--4iFRMWVpbg" continuedAt="Tb_ra6zbFaEVE--4iFRMWVpbg_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Revenue recognition:</b> Revenue is recognized when control of the promised goods or services is transferred to the Company&#8217;s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="Tb_dJWOrIdVVkKum-WfYM9cVg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s revenue disaggregated by revenue source.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_-dFfc8peQEeI3VtY_ZHmpw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_FSWn8DjwBkqvCuC5QcWvXA_3_3">22,104,953</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_46W_Lce_VUm9C3NSSmIrPg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_whAh4J706kuMkxQKqzLLKg_3_6">22,952,370</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bulk revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_CSlU1cPtB0WiopIwPeGA1g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_MDLUcQ4UDUK7TW_TP4gsEg_4_3">26,800,869</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_XL907EX-IEuZ5up-6fmYiw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_ZPOoOOi2dUSenEtN2ehwkA_4_6">24,312,546</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Services revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_0MeXq5vZnUCfNimySpnMeQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_6fXX-diiN0OgHRkDF6i9fQ_5_3">13,884,857</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_1aYYTFSqoECTbPyDh9BwmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_BaFtc7Zn0Euz_3EGtjlI2Q_5_6">12,937,859</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Manufacturing revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_891yP2BhlE-Tgn7a4CTS-Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_7bdgxm75cEqjJO26rNe1Tg_6_3">4,072,823</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_uzBPARo2t0Gt7yD1NWEUEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_E4r9dpH480ek12L9Unzb_w_6_6">12,425,351</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><b style="font-weight:bold;">Total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_z5N1l3yd_0OT2_po-tsVWQ_7_3">66,863,502</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_HFzD1Y7wokGhTMfb5JVvxw_7_6">72,628,126</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Retail revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to end-users, including residential, commercial and governmental customers in the Cayman Islands under an exclusive retail license issued to Cayman Water by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman Island. Customers are billed on a&#160;monthly basis based on metered consumption and bills are typically collected within <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ" format="ixt-sec:durday" name="cwco:NumberOfDaysAfterConsumptionBillingsAreCollected" id="Narr_PRiTpbTw4U6dNNUenhxlsw">30</ix:nonNumeric> to <span style="-sec-ix-hidden:Hidden_diVp5qBtB0KjZqeIyo-3cQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45&#160;days</span></span> after the billing date. Receivables not collected within <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" format="ixt-sec:durday" name="cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" id="Narr_GxA_UveSBEaVLBqC6L_W4g">45</ix:nonNumeric>&#160;days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2019_To_12_31_2019_srt_RangeAxis_srt_MaximumMember_VoBNP3iM4k2BNaN6Qz9urw" decimals="2" format="ixt:numdotdecimal" name="cwco:PercentageOfBadDebts" scale="-2" id="Narr_ADcMVvBXmkOHnE9EuvZnNw"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_iFjut3yj2USWDhBKw1EUtQ" decimals="2" format="ixt:numdotdecimal" name="cwco:PercentageOfBadDebts" scale="-2" id="Narr_iY0IDFPkvUyfRy1BMXRYBg">1</ix:nonFraction></ix:nonFraction>% of the Company&#8217;s total retail sales.</p></ix:nonNumeric></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">54</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Narr_Xy-aNTlmGESkbE30O3AN-Q"></a><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont5" continuedAt="Tb_K5Uim_6Zh068y9a6e1eOBw_cont6"><ix:continuation id="Tb_ra6zbFaEVE--4iFRMWVpbg_cont1" continuedAt="Tb_ra6zbFaEVE--4iFRMWVpbg_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes revenue from water sales at the time water is supplied to the customer&#8217;s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each&#160;month. All retail water contracts are&#160;month-to-month contracts. The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its retail water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Bulk revenue</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to government-owned distributors in the Cayman Islands and The Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">OC-Cayman provides bulk water to the Water Authority-Cayman (&#8220;WAC&#8221;), a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes such water to properties in Grand Cayman outside of Cayman Water&#8217;s retail license area.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company sells bulk water in The Bahamas through its majority-owned subsidiary, CW-Bahamas, under two agreements with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. CW-Bahamas also sold water to a private resort on Bimini through December 18, 2020, which generated revenue of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_ConsolidatedEntitiesAxis_cwco_ConsolidatedWaterBahamasMember_srt_StatementGeographicalAxis_country_BS_TjELs3qLxkKtQNWWCjLUbA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Narr_xJ_avWODnkCR5itlNFOA_A">127,000</ix:nonFraction> for the year ended December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its bulk water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Services and Manufacturing revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company provides design, engineering, management, procurement and construction services for desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas and the British Virgin Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company also designs, builds, sells, operates and manages water, wastewater and water reuse infrastructure through PERC. All of PERC&#39;s customers are companies or governmental entities located in the U.S.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company, through Aerex, is a custom and specialty manufacturer of water treatment-related systems and products applicable to commercial, municipal and industrial water production. Substantially all of Aerex&#8217;s customers are U.S. companies.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company generates construction and services revenue from DesalCo and PERC, and generates manufacturing revenue from Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes <span style="background:#ffffff;">revenue for its construction and its specialized/custom manufacturing contracts&#160;</span>over time under the input method using costs incurred (which represents work performed) to date relative to total estimated costs at completion to measure progress toward satisfying its performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials and amounts payable to subcontractors. The Company follows this method since it can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, the Company records revenue and recognizes profit or loss as work on the contract progresses. The Company estimates total project costs and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and updates these estimates as work on the contract progresses. The cumulative amount of revenue recorded on a contract at a specified point in time is that&#160;percentage of total estimated revenue that incurred costs to date comprises of estimated total contract costs. If, as work progresses, the actual contract costs exceed estimates, the profit recognized on revenue from that contract decreases. The Company recognizes the full amount of any estimated loss on a contract at the time the estimates indicate such a loss. Any contract assets are classified as current assets. Contract liabilities on uncompleted contracts, if any, are classified as current liabilities.</p></ix:continuation></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">55</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_K5Uim_6Zh068y9a6e1eOBw_cont6"><ix:continuation id="Tb_ra6zbFaEVE--4iFRMWVpbg_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its services agreements and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Practical Expedients and Exemptions</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company does not disclose the value of unsatisfied performance obligations for (i)&#160;contracts with an original expected length of one&#160;year or less and (ii)&#160;contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.</p></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="Tb_LPjVmvrT4EutKZ0sx-CGAg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Comparative amounts:</b> Certain amounts presented in the financial statements previously issued for 2020 have been reclassified to conform to the current&#160;year&#8217;s presentation.</p></ix:nonNumeric></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_8c42ec73_0a20_492b_9a15_1c7ca8b119aa"></a><a id="Tc_3z2UYw97CUi2mawD7smAhg_1_2"></a><a id="Tc_5iml18o0SEqSWtztZFD8TA_2_2"></a><a id="Tc_gN_RtApKLkGXMcE7BH0diQ_2_5"></a><a id="Tc_o9jwAjEicE-l8PHU7NQHlQ_3_0"></a><a id="Tc__leUTj8fh0CWiPBNEPbWYg_4_0"></a><a id="Tc_pc1jHV7P3EOCS2K64q-3QQ_4_2"></a><a id="Tc_3tfPwaPCDEi9VBsoe2Lvhg_4_5"></a><a id="Tc_aO_XkxXoGkSAfSXjqhBChA_5_0"></a><a id="Tc_kWhKvI6yrUWpdxZHQ7nvNA_6_0"></a><a id="Tc_3Zm-5Clz3EiDcAYLefo4Lg_7_0"></a><a id="Tc_RZFHX7vIK06nKIUcZ83acw_10_0"></a><a id="Tc_ws52jugcEE6gz3eUNok35Q_11_0"></a><a id="Tc_g6X1Zr6HA0iw1HjhG8RKPQ_12_0"></a><a id="Tc_S2XBqoclC0qcY-zOS0XePg_13_0"></a><a id="Tc_Perm4_co2UmWQ27QGJ4npw_15_0"></a><a id="Tc_lAvaKeBDK0ienTRpCEYKKg_15_2"></a><a id="Tc_cg1idaSWwUa5nQhyyWy1ag_15_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:CashAndCashEquivalentsDisclosureTextBlock" id="Tb_7E8rdkcQpUK-dtlGwCa6ag" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">3. Cash and cash equivalents</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Cash and cash equivalents are not restricted by the terms of the Company&#8217;s bank accounts as to withdrawal or use. As of December&#160;31, 2021 and 2020, the equivalent United States dollars of the Company&#8217;s cash and cash equivalents, including those accounts denominated in currencies other than the U.S. dollar, are as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock" id="Tb_QMKErbCSNUqG2O4kc9N5WA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bank accounts:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_akeE22X4GEKDWMBTL_bpyg_4_3">15,888,445</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_XpOAdgaaXUGbJf7mATS_kA_4_6">14,001,264</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_2t2j8yE-3Ea-u_M3XhCrxw_5_3">12,784,358</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_iXsu8q5B1kK856m1Vw7Jyg_5_6">5,650,874</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_arawSLXSbkCLHq507bPPlA_6_3">3,944,208</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_DcrzPAPxLEOTA2ZyXOAV2w_6_6">14,863,287</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bermudian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BMD_yI9Ptl_N-UCFrFY35QHWCw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_Md9Hpho1KkSnz3zUIJYrAg_7_3">2,832</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BMD_YbOYPvhNE02T-1w0bLtgBQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_GylSRAfer02_pN2CiZSXOg_7_6">2,832</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_2EYMpMOUD0eGrvubvhTlmQ_8_3">32,619,843</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Cash" scale="0" id="Tc_EaNUpaSdt0y06SffVgKtBg_8_6">34,518,257</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Short term deposits:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_B7Fyz9AM2U6YTzm_L96-nQ_11_3">5,324,258</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_kfcZVt-bv0mPI7PLCIWgFQ_11_6">5,796,582</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_Kbmqf97JtEuMZLqXuNbIJw_12_3">2,413,958</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_8w-EW2NBnkG0oStlVe06tw_12_6">2,413,547</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ" decimals="0" format="ixt:zerodash" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_530w_vHRnEmxGkXr2_Uqsg_13_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_Xinqxl1br0GxVTIUC55t_A_13_6">1,065,764</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_re_Xmftgkk2uhftn1bxWXw_14_3">7,738,216</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashEquivalentsAtCarryingValue" scale="0" id="Tc_-Ilo8GQSIUiZERMus1rd9w_14_6">9,275,893</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" id="Tc_zBY1xFG7t0aakAjCiLSNsw_15_3">40,358,059</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" id="Tc_lzIblq-1m0i4K9TsGGPkSA_15_6">43,794,150</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#00ff00;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Transfers from the Company&#8217;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of the Bahamas.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_e8383994_3996_4a80_acec_9055b4c3ee78"></a><a id="Tc_idCmtPAyfU2TfMmXxDc38Q_1_2"></a><a id="Tc_vi9mDkUtvkqldNbtxjzcMw_2_2"></a><a id="Tc_1noci7lKvEC4-Rm2xsiHOA_2_5"></a><a id="Tc_LaX0ZWeuGEKSxYOe-1uvZw_3_0"></a><a id="Tc_nbGwMSguf0OBoA0v0HhJtQ_3_2"></a><a id="Tc_WFknlCsngkmMflYA6bzFNg_3_5"></a><a id="Tc_YhhXjGEX1UyOB_PRJVdcfA_4_0"></a><a id="Tc_dmkpte7zqEKOR2f5pki1wA_5_0"></a><a id="Tc_5fSFdsP7XE6K7qCHBt4MnA_7_0"></a><a id="Tc_lBrvdPppc0KjdYZcV-PWQA_8_0"></a><a id="Tc_tStcW-m6Yk2lynbCtykmag_8_2"></a><a id="Tc_Dv7IaddXVUiDjWPH2pdbog_8_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="Tb_9NWGSHsW5UWC4pFEevqf0g" continuedAt="Tb_9NWGSHsW5UWC4pFEevqf0g_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">4. Accounts receivable, net</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" id="Tb_X_yP70yEiEGmx3yCl7rkCw" continuedAt="Tb_X_yP70yEiEGmx3yCl7rkCw_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:AccountsReceivableTradeCurrent" scale="0" id="Tc_TXEa-GWTJUK1tt04EYBOHQ_3_3">27,409,029</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:AccountsReceivableTradeCurrent" scale="0" id="Tc_HF5uGvIvq06-yxOrhq6jbA_3_6">21,422,782</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Receivable from OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DueFromAffiliateCurrent" scale="0" id="Tc_R3xHF-h2lUGzaP6MEplBIA_4_3">40,877</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DueFromAffiliateCurrent" scale="0" id="Tc_aaP26iwW3U2njJlZp6IvJA_4_6">62,171</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:AccountsReceivableOtherCurrent" scale="0" id="Tc_ux7-fS8fukiLcwskRRWVqQ_5_3">180,262</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:AccountsReceivableOtherCurrent" scale="0" id="Tc_8oksNXbrE0-h0irTRSqMdg_5_6">269,133</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableGrossCurrent" scale="0" id="Tc_WA5JmAJ1a02D8AB9rdyXSQ_6_3">27,630,168</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableGrossCurrent" scale="0" id="Tc_6QrWU0kh1EauqpzCNBxv1g_6_6">21,754,086</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_oojjNlRFZEecvchzktFU6A_7_3">280,861</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_TSVMEXiGxEmLuUtg2mjYbg_7_6">270,110</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_vCXRi6tL5UKhjb4-xo0OKg_8_3">27,349,307</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_n_1FHnBheUeQdi9bA3b4Zw_8_6">21,483,976</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">56</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_452ebe27_f26d_49ec_9f7f_bb9a1afd790e"></a><a id="Tc_2ea0bwtYlE-m1siO--JLlQ_1_2"></a><a id="Tc_02NA0TvlK0ydFqydtuz9Ew_2_2"></a><a id="Tc_7SX3G1qcfEygsGfqWlA4NA_2_5"></a><a id="Tc_2bF_emBmfECiWquD7WT82A_3_0"></a><a id="Tc_mbNpj7-ZZkOJ415Onx8sqw_3_2"></a><a id="Tc_7BJ4i2pVTkySFuerMA_xQA_3_5"></a><a id="Tc_SgkjzgoRXU27s6v_ZiGAtQ_4_0"></a><a id="Tc_MSZewW_1M0aCaK-rZ3KEIA_5_0"></a><a id="Tc_32rjE4JcoUSD4Dm4Hb97xA_6_0"></a><a id="Tc_E-EUf6hy-E6X9Y3W9h175w_7_0"></a><a id="Tc_MrqSG6y-tkiIKktp_Cdqfg_7_2"></a><a id="Tc_wQ1ewuUbtU-LGpoI4f9zuw_7_5"></a><ix:continuation id="Tb_9NWGSHsW5UWC4pFEevqf0g_cont1"><ix:continuation id="Tb_X_yP70yEiEGmx3yCl7rkCw_cont1"></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" id="Tb_3oub6AhdH0Ozul8Kjt0ifA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the allowance for doubtful accounts consisted of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Opening allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_NysFNF-QK0m6gPZKCqcD3g_3_3">270,110</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_Xbi1ZbxTPUuj0E2cHASwsg_3_6">142,236</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:zerodash" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" id="Tc_9n8vaLPiREKzOBLR6B_9QQ_4_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" id="Tc_a45QZqWxZE6knEoXpibvfw_4_6">129,107</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts written off during the year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:zerodash" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" scale="0" id="Tc_FSIfb08NyEGcSXMTgu2qbA_5_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs" scale="0" id="Tc_nkiweckGBky9ukKAebd21Q_5_6">1,233</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Recovery of accounts written off </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="0" id="Tc_Fm4PBi9vFUOoY4j98akkNg_6_3">10,751</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:zerodash" name="us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries" scale="0" id="Tc_hCFAgrF4DkaslZvVvuCkag_6_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_9d0YOp-dPU2bC_OvJQs8Xw_7_3">280,861</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" id="Tc_Xywo5jwgzkqn217bm1jISA_7_6">270,110</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Significant concentrations of credit risk are disclosed in Note&#160;18.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="Tc_Z4cB41ffZUa7v8y1RoiuBw_1_2"></a><a id="Tc_xCvPCFzPe0-LpVQm0K9Wyw_2_2"></a><a id="Tc_28wofi-36U-AqPiTbl7n2Q_2_5"></a><a id="Tc_iGk8PZ2YHUycynBUmz6qIg_3_0"></a><a id="Tc_QZDgXavHPkiaS-XithiKxg_3_2"></a><a id="Tc_8Ucw8dj3Z0eM-_SvyKzrFA_3_5"></a><a id="Tc_Qrgw2HBadEKxTk6irbVdBw_4_0"></a><a id="Tc_77Ca5GBFpE6txwewLETTnw_5_0"></a><a id="Tc_D577rXECFUKlAm-UKqH5TQ_6_0"></a><a id="Tc_egvPGGp6M0ea7N0byrYiKQ_7_0"></a><a id="Tc_1_f54uiF2kSRwDX_lrPjpg_8_0"></a><a id="Tc_Im85mVbKEkCvIxrTBXdm3g_8_2"></a><a id="Tc_L3zq4BuVyE6EGMVdOH1qtw_8_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:InventoryDisclosureTextBlock" id="Tb_jw2l-h2rXEWIgphgodyiqw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">5. Inventory</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock" id="Tb_LB0TuxXdYEeXtWh8ie5KgA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Water stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_eK27emARAU2mKKBCyPz6aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_DNJSqSt8HUGvT2FJFNtZ_g_3_3">34,587</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_2URf-WJgHUWNUkUB4ndn2A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_8S016xO4PE6cHLQxt6xA0w_3_6">27,938</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Consumables stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_EFM7vPcFNEmC4z7b0LGJ6g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_RtdZ3i3oWE-8gI_TkcE5yw_4_3">138,547</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_mOgZI7LkwkWHR4GtJ0cEUw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_6WeIX86UG0iVq4qKf1QuYw_4_6">105,540</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Spare parts stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_uELHyMleHUyrT3u21aLCFQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_a-E9wUWMg0y8U6WfOqQw3Q_5_3">7,064,708</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_Kj4GgNPmcEO0AQNN4roLJw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_BcuF5TC5M0OgGMVkdh1FfA_5_6">7,587,542</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_wd1WQT81o0WdRPgnwtjwgw_6_3">7,237,842</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryGross" scale="0" id="Tc_7hy59to85Eu8Psv3QRNM4Q_6_6">7,721,020</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="0" id="Tc_TJSxHTwizEaYZo-c4aWOsg_7_3">2,504,832</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="0" id="Tc_nrVd2CHQjUGAvnPApDOKAQ_7_6">3,214,178</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory (non-current)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNoncurrent" scale="0" id="Tc_TjA0H-D0mUSzrLaaRTVcfA_8_3">4,733,010</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InventoryNoncurrent" scale="0" id="Tc_3qsRb-W7DUugqNnnBn6TtQ_8_6">4,506,842</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_f67fc03a_aad5_4545_822b_ace32fd6a541"></a><a id="Tc_looEKVWXpU2jvp7VTrEUIg_1_2"></a><a id="Tc_M54_gd3th06Ni-qmdavtpQ_2_2"></a><a id="Tc_CVP0ZeCtHkuYqitAQU15hA_2_5"></a><a id="Tc_TGwYfc3kfUqR4BAXr8KxLw_3_0"></a><a id="Tc_yrIkqWJXWE6oxh0fxpgOgw_3_2"></a><a id="Tc_aIurdxEwF0K_c-UCuAqwgw_3_5"></a><a id="Tc_wwY10gXt-0i9An0u0AVc7A_4_0"></a><a id="Tc_oVqjOYHYRkWqL-vnaX1R2A_5_0"></a><a id="Tc__CYGhw51e0mW76rpGobNDA_6_0"></a><a id="Tc_OWFkfxq4-kG3bmccDYGBOg_6_2"></a><a id="Tc_LL7OAj4LPkSQTnPlypQUrw_6_5"></a><a id="_d83ca62f_999b_48b5_9ac7_4839e5cb0b55"></a><a id="Tc_85JhScK4YU6g9t68yeYUtg_1_3"></a><a id="Tc_1sZWjTVziUOrKjXD8XUApg_2_3"></a><a id="Tc_IrW-UoW1D0ivCibj7PGy6g_2_6"></a><a id="Tc_MS_cg1bRC0qFZBVCSPz7HQ_3_0"></a><a id="Tc_z8hm7xiy40GYctIJd-2gkg_3_3"></a><a id="Tc_pBGnW0DRM02rBryAvuHUqQ_3_6"></a><a id="Tc_TqVP3mVj6kW8NxBxLKTDgQ_4_0"></a><a id="Tc_bK2HkUYrEUCAgdXG6ZLH-g_5_0"></a><a id="Tc_hWi4-Vhr1UaVpkRN8eCX3w_5_3"></a><a id="Tc_OBykS_AkLkKO1nJEiQqP5g_5_6"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="Tb_KC_OGDxDMEC1scsTeDKQoA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">6. Contracts in progress</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" id="Tb_KMjs1wh030a-MkiaHZdM7A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue recognized and amounts billed on contracts in progress are summarized as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue recognized to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" id="Tc_G8NXoLDMv0CqziayCQIYzQ_3_3">6,109,396</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" id="Tc_G7ofgyF9jUOk88aRaIUMkQ_3_6">17,534,449</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amounts billed to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerAmountBilled" scale="0" id="Tc_NsdH5GdA8k2sWoiMC6GciA_4_3">6,370,855</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerAmountBilled" scale="0" id="Tc_cg2iO1VIOkWk7YCP-jW8Nw_4_6">17,791,928</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Retainage</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerRetainage" scale="0" id="Tc_NVbQ3B8dW0uaU_Vy-Dw-LQ_5_3">237,542</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerRetainage" scale="0" id="Tc_MHi12L-owk2sTzt18bqtkw_5_6">312,130</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerNetOverbillings" sign="-" scale="0" id="Tc_2L6is2f08kSR_SUNVuYPoQ_6_3">23,917</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerNetOverbillings" scale="0" id="Tc_zYf2IMd6Ok6RBaAn7JTgQg_6_6">54,651</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">The above net balances are reflected in the accompanying consolidated balance sheet as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNetCurrent" scale="0" id="Tc_BmDrytI1Wk-WR72cIqor_w_3_4">489,961</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerAssetNetCurrent" scale="0" id="Tc_WnfFUId_FkKMmYLH2f-WRQ_3_7">516,521</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" id="Tc_Y0UPM8By50K24cdSKr4KDw_4_4">513,878</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="0" id="Tc_0-PSbgEBaUiaYj2VZq_SYw_4_7">461,870</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerNetOverbillings" sign="-" scale="0" id="Tc_9X6WrezMz0WRfHxuWrYLoA_5_4">23,917</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ContractWithCustomerNetOverbillings" scale="0" id="Tc_byxcieisQ0ykePoFNkr1eg_5_7">54,651</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of <span style="-sec-ix-hidden:Hidden_ANe22B19gUG017w1p2eYRQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">December 31, 2021</span></span>, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RevenueRemainingPerformanceObligation" scale="6" id="Narr_XVRlW_Zx6UeA4Bo5dMaQqA">5.7</ix:nonFraction> million in aggregate transaction price for contracts with an original expected length of greater than one year. The Company expects to earn revenue as it satisfies its performance obligations under those contracts in the amount of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RevenueRemainingPerformanceObligation" scale="6" id="Narr_LWJFcI9TFk6pRH1rGdDImQ">4.8</ix:nonFraction> million during the year ending <span style="-sec-ix-hidden:Hidden_wAgvE9b-oEOCy5TqD4Q-Ww;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">December 31, 2022</span></span> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RevenueRemainingPerformanceObligation" scale="6" id="Narr_4COpEnXRaEmRDE-CDsuLtQ">0.9</ix:nonFraction> million <span style="-sec-ix-hidden:Hidden_UFQss1Ac5ku0S6GVflhWSQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">thereafter</span></span>.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">57</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_5vzAtllnmUKi_AuxCCIukA_1_2"></a><a id="Tc_sa6wMoLCcEGYJDPw8jQY3g_2_2"></a><a id="Tc_H4rd99nUTEOcUGhzlEP20Q_2_5"></a><a id="Tc_hTf6F16axkCEyoHGUJ0oQQ_3_0"></a><a id="Tc_KOmO_0FEakqk9LZqaKD0ow_3_2"></a><a id="Tc_p675OhkkxEKsEZb6AjxOuA_3_5"></a><a id="Tc_h8yENPTckU-1KXR7ZF1yiQ_4_0"></a><a id="Tc_2rsrSXTkiUCTGg4uus1ZvA_5_0"></a><a id="Tc_6ZPRmSYqzEqtdjNC7y7_dA_6_0"></a><a id="Tc_OuDI_ovun0OhAVkcKxxomQ_7_0"></a><a id="Tc_MhJsrFZulES_KPJA3aIPpg_8_0"></a><a id="Tc_2XlSy90Jv0uFAQczgU_JCw_9_0"></a><a id="Tc_EJ3xJqE3GU6GMoTr1a1Grw_10_0"></a><a id="Tc_uX8kV4XhzUycAto1IEwexw_12_0"></a><a id="Tc_C5gbW3gjJk6sqWg7netOWQ_13_0"></a><a id="Tc_5uDaqr7qEUi-CaI9DS4ziQ_13_2"></a><a id="Tc_2ZwVFDGRzkSFu-4jbY7-ug_13_5"></a><a id="Tc_RBg5PO27XkGeBrG4qDzgqA_14_0"></a><a id="Tc_VN22ZSCWv0WoyDhjRCq_DA_14_2"></a><a id="Tc_4Mm0Tp9m30esg_8sGoHPZg_14_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="Tb_u3MjbZ62jEmGnVlWBgeAjQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">7. Property, plant and equipment and construction in progress</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="Tb_9ulubz5Js0aExSsgOWQ4LA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Dg8BDT9XIEqd5W0viRmQJQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_JkaWic3cU0erNpshbGD8aA_3_3">3,316,537</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Gq8TCot5x0qU8u3_0ne28Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_K526NXX4lE2QGtTm0X5m0w_3_6">3,566,537</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_NcZIUjj1GUOB2vhn2iFpZw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_19Y6aBLij0CIDwvSp6yYyw_4_3">23,255,925</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_d9R7-HnSL0iEA4q5aOjxJQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_musx4WazjUW3-cP_mqfDKQ_4_6">23,250,843</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_CzfqvDl2wUe2LSnoTArTwA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_p3urnJOeEE2xa1lCWzqcTg_5_3">64,324,377</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_ZasKl46S-kCWxEsGwCVNBA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_SVoWCFhIPUC-LSeB1hVvAA_5_6">63,734,860</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9DHoHSNk8UGLD-3qmQuO-A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_pUOxv9V_nE6mZn6EHBr3Tg_6_3">39,780,272</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9gvh9nlZREK3E8_Ajv98yw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_dc-bEGAOuEynysFh354hEQ_6_6">39,149,063</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_M_HgzXulXkmcIh_xwKYrWw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_W3FX5g4NDkKOChhpRnXQKw_7_3">3,051,814</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_IQA4ggKCwUurTE4IwWNvdQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_WURyhrBcu0OJi9fZN_9ZjA_7_6">3,083,811</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_DPIDrrm23U6xCvGcJcB6aA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_2kztHDtZ7kSMaVl8wNe0wQ_8_3">2,079,874</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_fGR-Ohfs1U6INXwfYhxHGw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_SUeky1fMoU-IXA0wX15jYA_8_6">1,999,463</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_1GGLQ6kthUyV7m1_VGBRpw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_z0mwpHFB2Euxyco1xaVfAQ_9_3">287,980</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_yIfYKKMuGUmUB0HIqj1MOg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_rG7fYAIabk2tLtv0pNucYg_9_6">274,230</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_rFv8iP5Y7UqmEXng7mXwnA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_IqWscyplw0eyvfChDJppnA_10_3">12,456</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_2RQVTP85qkmCSF5ZuRurtA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_1g-n7ikQBE-ISQNUFJeQng_10_6">12,456</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_ryJsG4Upb063P6w2yx3fVg_11_3">136,109,235</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="0" id="Tc_lOMSy9r-O02PQVi0afbkMQ_11_6">135,071,263</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" id="Tc_d39UxsdQUkK78HaGdGzhnA_12_3">83,162,696</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="0" id="Tc_pefG-UGouEWG-svHRfOTGw_12_6">77,383,279</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Property, plant and equipment, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_hEQXCsPa90mf5mCQuKuWXw_13_3">52,946,539</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_xfiCgjUHXUqAAtJPEE8ogA_13_6">57,687,984</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Construction in progress</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ConstructionInProgressGross" scale="0" id="Tc_fzZXVHAi20K4L9RPQIIp0w_14_3">710,863</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ConstructionInProgressGross" scale="0" id="Tc_xMvwJX8bMEqoKzkWHny2xw_14_6">440,384</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December&#160;31, 2021, the Company had outstanding capital commitments of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="-5" format="ixt:numdotdecimal" name="cwco:CapitalCommitments" scale="6" id="Narr_0Ifs7ujJv0OERFEe0zoKyg">2.7</ix:nonFraction> million. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the&#160;years ended December&#160;31, 2021 and 2020, $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgressPlacedInService" scale="0" id="Narr_34eVkRBsWU2_BAws-bN3bw">644,224</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgressPlacedInService" scale="0" id="Narr__T7t5WmsIky7Iui8X-IqXA">1,653,501</ix:nonFraction>, respectively, of construction in progress was placed in service. Depreciation expense was $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="0" id="Narr_ifxD29sn1EaElNPzYw_Avw">5,995,213</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="0" id="Narr_JgKLbCrqxkO33wnC9yNY9w">6,335,489</ix:nonFraction> for the&#160;years ended December&#160;31, 2021 and 2020, respectively.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" id="Tb_Hb-oqzYZcUmXAuvu5Aw86g" continuedAt="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">8. Discontinued operations</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Mexico project development</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In 2010, the Company began the pursuit, through its Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), of a project (the &#8220;Project&#8221;) that encompassed the construction, operation and minority ownership of a <ix:nonFraction unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw" contextRef="Duration_5_1_2010_To_5_31_2010_srt_OwnershipAxis_cwco_NSCAguaMember_ELCRUOm45UyRTNSZEM2cww" decimals="-6" format="ixt:numdotdecimal" name="cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" scale="6" id="Narr__UeUiJjJwk2g1r3nkNvpmQ">100</ix:nonFraction> million gallon per day seawater reverse osmosis desalination plant to be located in northern Baja California, Mexico and accompanying pipelines to deliver water to the Mexican potable water system.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through a series of transactions that began in 2012, NSC purchased <ix:nonFraction unitRef="Unit_Standard_ha_K-jpQBTkYEqk72sCRDBJPw" contextRef="As_Of_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_BXNxweqTQESXtjduBYzovg" decimals="1" format="ixt:numdotdecimal" name="us-gaap:AreaOfLand" scale="0" id="Narr_maO5aswwhUu_aQgaZbr6hw">20.1</ix:nonFraction> hectares of land for approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2012_To_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_VH9UoHlOJEqIuJBRDtZRQA" decimals="-5" format="ixt:numdotdecimal" name="cwco:PaymentForLandAndRightOfWayHeldForDevelopment" scale="6" id="Narr_pHOEr1qeR0atSoNXSGU1RA">21.1</ix:nonFraction> million on which the proposed Project&#8217;s plant was to be constructed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Following an assessment by the State of Baja, California (the &#8220;State&#8221;) of the need for such a desalination plant and the passage of enabling legislation in November 2015, the State officially commenced the required public tender for the Project. A consortium (the &#8220;Consortium&#8221;) comprised of NSC, Suez Medio Ambiente M&#233;xico, S.A. de C.V. (&#8220;Suez MA&#8221;), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (&#8220;NuWater&#8221;) submitted its tender for the Project in April 2016 and in June 2016, the State designated the Consortium as the winner of the tender process for the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;) to pursue completion of the Project and executed a shareholders agreement for AdR agreeing among other things that (i) AdR would purchase the land and other Project assets from NSC on the date that the Project begins commercial operation and (ii) AdR would enter into a Management and Technical Services Agreement with NSC effective on the first day that the Project begins commercial operation. NSC initially owned <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_8_31_2016_srt_OwnershipAxis_cwco_NSCAguaMember_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_9ebzzcwQnkOLu-XEmIumYg" decimals="3" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" id="Narr_HeIkGhWv70evzwiQyKvlIA">99.6</ix:nonFraction>% of the equity of AdR. In February 2018, CW-Holdings acquired the remaining <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_2_28_2018_srt_OwnershipAxis_cwco_NSCAguaMember_V_2yYieCIE-chbMnJVCtNw" decimals="3" format="ixt:numdotdecimal" name="us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners" scale="-2" id="Narr_3hh1X6j4e0yOJ4ftVFmR9A">0.4</ix:nonFraction>% ownership in AdR from NuWater.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On August 22, 2016, the Public Private Partnership Agreement for the Project (the &#8220;APP Contract&#8221;) was executed between AdR, the State Water Commission of Baja California (&#8220;CEA&#8221;), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (&#8220;CESPT&#8221;). The APP Contract required AdR to design, construct, finance and operate a seawater reverse osmosis desalination plant (and accompanying aqueduct) with a capacity of up to <ix:nonFraction unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw" contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ" decimals="-6" format="ixt:numdotdecimal" name="cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" scale="6" id="Narr_WUGFenZ7yUa_Vlbfil1hbQ">100</ix:nonFraction> million gallons per day in two phases: the first with a capacity of <ix:nonFraction unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw" contextRef="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_FirstPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_JTQpx4uNUUeasrgD2BLxZg" decimals="-6" format="ixt:numdotdecimal" name="cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" scale="6" id="Narr_X-h6Y0PCkk-bQGWauGPbCg">50</ix:nonFraction> million gallons per day </p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">58</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont1" continuedAt="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">and an aqueduct to the Mexican potable water system in Tijuana, Baja California and the second phase with a capacity of <ix:nonFraction unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw" contextRef="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_SecondPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_rHzf6vwgrEi5AXn4ULiodg" decimals="-6" format="ixt:numdotdecimal" name="cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" scale="6" id="Narr_M3AlY7qZTUGiE5KawAS4qg">50</ix:nonFraction> million gallons per day. The first phase was to be operational within <ix:nonNumeric contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ" format="ixt-sec:durwordsen" name="cwco:PeriodInWhichConstructionMustBeCompleted" id="Narr_pntR9YdnvEKyyr3BdPCMFg">36 months</ix:nonNumeric> of commencing construction and the second phase was to be operational by July 2024. The APP Contract further required AdR to operate and maintain the plant and aqueduct for a period of <ix:nonNumeric contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ" format="ixt-sec:durwordsen" name="cwco:PeriodRequiredToOperateAndMaintainPlantAndAqueduct" id="Narr_0ENai5rt9EWq8vAfSoIOyw">37 years</ix:nonNumeric> starting from the commencement of operation of the first phase. At the end of the operating period, ownership of the plant and aqueduct would have been transferred to CEA. The APP Contract was subsequently amended by the parties in June 2018 to increase the scope of Phase 1 and to allow for changes in the water tariff due to the changes in the exchange rate for the peso, interest rates and construction costs that had and would occur from the date the APP Contract was signed to the date construction commenced.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On June 29, 2020, AdR received a letter (the &#8220;Letter&#8221;) from the Director General of CEA and the Director General of CESPT terminating the APP Contract. The Letter requested that AdR provide an inventory of the assets that currently comprise the &#8220;Project Works&#8221; (as defined in the APP Contract) for the purpose of acknowledging and paying the non-recoverable expenses made by AdR in connection with the Project, with such reimbursement to be calculated in accordance with the terms of the APP Contract. The applicable law requires this list of non-recoverable expenses made by AdR in connection with the Project be submitted to CEA and CESPT within <ix:nonNumeric contextRef="Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA" format="ixt-sec:durday" name="cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses" id="Narr_yPHgV3JW3kOSZpp9rYMNCw">20</ix:nonNumeric> business days from the date of receipt of the Letter. AdR initiated an&#160;amparo&#160;claim before a federal district court in Tijuana, Baja California, to challenge the provision of the applicable law requiring submittal of the list of non-recoverable expenses within the&#160;20&#160;business days term, as AdR considered such term to be unreasonably short due to the magnitude of the Project and the scope of supporting documentation required to be provided with respect to the non-recoverable expenses. AdR obtained an initial provisional suspension of the lapsing of such 20-day term from the court, and on August 10, 2020 the court made such suspension definitive until the completion of the amparo trial. As such, the&#160;20-day&#160;term for filing the list of non-recoverable expenses was suspended. Therefore, on August 28, 2020, AdR submitted their list of non-recoverable expenses, including those of NSC, to CEA and CESPT which was comprised of <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA" decimals="0" format="ixt:numdotdecimal" name="cwco:DiscontinuedOperationsNonRecoverableExpenses" scale="0" id="Narr_NiUVd7GA0E-DWoU7Q_2tVA">51,144,525</ix:nonFraction> United States dollars and an additional <ix:nonFraction unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q" contextRef="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA" decimals="0" format="ixt:numdotdecimal" name="cwco:DiscontinuedOperationsNonRecoverableExpenses" scale="0" id="Narr_wKSqpi2e30qhmzz3d7UQjw">137,333,114</ix:nonFraction> Mexican pesos. In February 2021, AdR withdrew this amparo claim, and such withdrawal was accepted by the federal district court in Tijuana. To date, AdR has not received a response from CEA or CESPT to its submission of non-recoverable expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company believes CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the <i style="font-style:italic;">Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States </i>entered into force as of October 1, 1999 (the &#8220;Treaty&#8221;). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State&#8217;s termination of the APP Contract constituted a breach by Mexico of its international obligations under the Treaty, entitling CW-Cooperatief to full reparation, including monetary damages. This letter invites Mexico to seek a resolution of this investment dispute through consultation and negotiation, but states that if the dispute cannot be resolved in this manner, CW-Cooperatief elects to refer the dispute to the International Centre for the Settlement of International Disputes for arbitration, as provided for in the Treaty. On June 29, 2021, the Mexican Ministry of Economy responded to CW-Cooperatief&#8217;s letter and proposed to hold a consultation meeting. Two such meetings were held on July 9, 2021 and August 2, 2021 on a confidential basis, without a resolution of the Company&#8217;s investment dispute.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">&#8203;On February 9, 2022, CW-Cooperatief, filed a Request for Arbitration with the International Centre for Settlement of International Disputes requesting that the United Mexican States pay CW-Cooperatief damages in excess of US$<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_2_9_2022_To_2_9_2022_srt_RangeAxis_srt_MinimumMember_mG-OHKlDjEuqWQVAjfeE5g" decimals="-6" format="ixt:numdotdecimal" name="us-gaap:LossContingencyDamagesSoughtValue" scale="6" id="Narr_PX_WDyQ4z0WcaDflEyK8aA">51</ix:nonFraction> million plus MXN$<ix:nonFraction unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q" contextRef="Duration_2_9_2022_To_2_9_2022_e-hhH-eOVE-bcwgPDZ6Ogw" decimals="-6" format="ixt:numdotdecimal" name="us-gaap:LitigationSettlementExpense" scale="6" id="Narr_m0WxbtJI9EinIuKBnXcjow">137</ix:nonFraction> million (with the exact amount to be quantified in the proceedings), plus fees, costs and pre- and post-award interest.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;">CW-Cooperatief intends to pursue vigorously the relief sought in the arbitration, in addition to pursuing all other legal remedies and courses of action available under the operative contracts and applicable law with respect to their rights, damages, fees and expenses. The Company cannot provide any assurances that CW-Cooperatief will be able to obtain the relief sought in the arbitration, and CW-Cooperatief will incur legal and other arbitration-related expenses that the Company expects will be material to its consolidated results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company cannot provide any assurances that it will be able to obtain reimbursement for any expenses or investments made with respect to the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">59</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_d176b5ab_e03c_4f79_a8c5_92eaeae06665"></a><a id="Tc_azdZFczRA0-cJwuihqmcMw_1_2"></a><a id="Tc_bq9JxzjiLUaQGmslmn9Bdg_2_3"></a><a id="Tc_zz264Rbfckun1eqlBZT2TA_2_6"></a><a id="Tc_JfXVAr-niUKzMXLuECWIgQ_3_0"></a><a id="Tc_83P7LokRhE6zPy-HxYq50A_3_2"></a><a id="Tc_3rQ1YPMLnkO28HaG9KW-6A_3_5"></a><a id="Tc_jDxl0VEKWkG3sYaOcYYuiw_4_0"></a><a id="Tc_vKLWCDnntkurJxwqwLPhPA_5_0"></a><a id="Tc_oVG6RkwgLUOQR56d1kf3iw_6_0"></a><a id="Tc_38l-AmT3d0yjfda0oabfvw_6_3"></a><a id="Tc_EneIhOpcJ0O4QF2uEZlsVA_7_0"></a><a id="Tc_vwFsbraQL0GGMo1cVGeb8g_8_0"></a><a id="Tc_Ch1A8adCL0-i0dBrIW5e-Q_9_0"></a><a id="Tc_2gIsIAXbrkq3BwvOZvKwsA_9_2"></a><a id="Tc_iegRF2Q9gUinEWLGhEiWTw_9_5"></a><a id="Tc_A1lSL9gyBUyNWi78qOu-yg_11_0"></a><a id="Tc_SPdvE32xNEG5zSTWQ6N4BQ_11_2"></a><a id="Tc_2rcEg4hYfUWCpUK2ODk8ng_11_5"></a><a id="_a84767c8_df7a_4f50_b71a_18b1f9df6913"></a><a id="Tc_cnOVUTjH7UyQgCdslF5wug_1_3"></a><a id="Tc_3XCGDMDXV0m-7EAU6Wjl7Q_2_3"></a><a id="Tc_Lasr2sD7hUCvkCguhmYLKQ_2_6"></a><a id="Tc_aDkqj6MxoUKlb3Dfl3Rcvw_3_0"></a><a id="Tc_Ag-FiaBMC0GP3ZMRFBhRbw_3_3"></a><a id="Tc_3V5noRGVpUmnQdsxlLUjbg_3_4"></a><a id="Tc_FaX6Tguci0-UD2-Hs4DH2w_3_6"></a><a id="Tc_KStw0Q8SN0ejde6V4W69zg_3_7"></a><a id="Tc_7nC1i_Nt90yueNbnlTyoIw_4_0"></a><a id="Tc_JEos1FO3F0Sxvj7e0wciCQ_4_3"></a><a id="Tc_izmJQAjtPkWjzqCtA71j1w_4_4"></a><a id="Tc_fsMRCHQSS0SgU_QZhtfEsw_4_6"></a><a id="Tc_FbEXNSjtv0CZK2euY6M_NQ_4_7"></a><a id="Tc_8jj1PFG76EOKJNQwcJsQBQ_5_0"></a><a id="Tc_BQZR5qcjhEeUzk1_dbo2kw_5_3"></a><a id="Tc_-qv62saxV0Cdm_mM7VsPHg_5_6"></a><a id="Tc_5DgAJYnsvEuzHo5BWM3PYw_6_0"></a><a id="Tc_LYsRv5bmU0Wy9EKTKIO3LQ_6_3"></a><a id="Tc_fZb2fqF1uUafnrcv3LR3eQ_6_6"></a><ix:continuation id="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont2" continuedAt="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As a result of the cancellation of the APP Contract, in 2020 the Company discontinued all development activities associated with the Project and commenced active marketing efforts to sell the land NSC purchased for the Project. Accordingly, the assets and liabilities of CW-Cooperatief, NSC and AdR, as well as all Project development expenses, the impairment loss of approximately ($<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="6" id="Narr_ukJeXbIq5E6AXOg7Ivet2w">3.0</ix:nonFraction> million) recorded during 2020 for Project assets, and the costs for legal and administrative activities to pursue reimbursement from the State of Baja California following the cancellation of the APP Contract, have been reclassified from the services segment to discontinued operations in the accompanying consolidated financial statements. The Company&#8217;s net losses from discontinued operations for the years ended December 31, 2021 and 2020 were ($<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromDiscontinuedOperations" scale="0" id="Narr_QgYsNvgMtUaTKzt4NIHx6g">2,574,079</ix:nonFraction>) and ($<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromDiscontinuedOperations" scale="0" id="Narr_K90_sBJwRE-sQAG15nqbjQ">4,902,243</ix:nonFraction>), respectively. The Company&#8217;s net loss from discontinued operations for 2021 and 2020 also includes provisions of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" scale="0" id="Narr_wl5RjlEMtUmm-huH3-shAw">963,540</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" scale="0" id="Narr_nJrVoP5G90SSxCt_t-loUg">316,217</ix:nonFraction>, respectively, for potentially uncollectible value added taxes paid that are reimbursable/receivable from the Mexican federal government. The Company recorded the 2021 provision as a result of the Mexican government&#8217;s rejection of its most recent request for repayment of these value added taxes paid. The Company believes it is legally entitled to be repaid for these value added taxes and has engaged a firm to assist it in collecting these amounts from the Mexican government. However, the Company ultimately may not be able to obtain such payment from the Mexican government and therefore may be required in the future to record another provision to write off the remaining balance of these receivables, which amounted to $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" scale="0" id="Narr_y2bqGe2V6Uyb3HBBZsFZZQ">340,910</ix:nonFraction> as of December 31, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" id="Tb_QDTuP4vXO0WjKRZ9bM2piA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">Summarized financial information for the discontinued Mexico project development operation is as follows:</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" scale="0" id="Tc_MONLckqlEUC09CbAT1DcrQ_3_3">750,048</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" scale="0" id="Tc_RbEb_U9BSkqQPFtXwJI3cg_3_6">154,130</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" scale="0" id="Tc_wgYtuOYvlUSWVMKsBUtHig_4_3">82,783</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" scale="0" id="Tc_tDI96tAxbUGIT_muOcH3_A_4_6">88,978</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-size:10pt;">Value added taxes receivable </span>(net of allowance of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="cwco:ValueAddedTaxReceivableAllowance" scale="0" id="Narr_VCcG95C1c0itbFOtrBaWDA">1,279,757</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="cwco:ValueAddedTaxReceivableAllowance" scale="0" id="Narr_xIzH2nWvzUaEhfWRtA5TLg">316,217</ix:nonFraction>, respectively)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" scale="0" id="Tc_Hklq4AabeEyn8PE_o-jtXw_5_3">340,910</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" scale="0" id="Tc_0uT_UPIl1UmRMQIKjLvh2g_5_6">1,267,991</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" scale="0" id="Tc_kvdRZpu2cU-XplnzUXgk4g_6_6">5,682</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" scale="0" id="Tc_V_IN9xkvl0GVFgBfNgVe4w_7_3">21,126,898</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" scale="0" id="Tc_qnf5quTqzkGq9M_p4tqMuQ_7_6">21,126,898</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" scale="0" id="Tc_B3zaKinH40eDJ13lhUk7Bg_8_3">19,288</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" scale="0" id="Tc_yiOmUKtox0mz0cxsXr2Seg_8_6">33,909</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_9PDUtoEST0iioE4Up1NOlA_9_3">22,319,927</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_9oYtBFJ5lESBoLbTw0Vfxg_9_6">22,677,588</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_rXPYF1OK0EG94n40aaw7HQ_11_3">190,141</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_PQQi5tRmKkunyDER2WKReQ_11_6">190,933</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromDiscontinuedOperations" scale="0" id="Tc_pqYokcuEbky1P-CIwMEkeQ_5_4">2,574,079</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromDiscontinuedOperations" scale="0" id="Tc_E0chz-lyUESmmbn_iE1OIQ_5_7">4,902,243</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" scale="0" id="Tc_DJMKKIEvD02oLMlRD3m9gA_6_4">4,545</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" scale="0" id="Tc_QS1GYUD2Kk6KmtF6TNMjAQ_6_7">4,545</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="text-decoration-line:underline;text-decoration-style:solid;">Project Litigation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Immediately following CW-Cooperatief&#8217;s acquisition of its initial <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2021_srt_OwnershipAxis_cwco_NSCAguaMember_y34pSeGxCkyAelXMEnbZNA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" id="Narr_skN-1gZ7S0-X03OXc5KX3g">50</ix:nonFraction>% ownership in NSC, the remaining <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2021_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_0yuwNccBOkiazVHGrZqHCg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:EquityMethodInvestmentOwnershipPercentage" scale="-2" id="Narr_ma6z4yOBcE2kQ77lrJc5lw">50</ix:nonFraction>% ownership interest in NSC was held by an unrelated company, Norte Sur Agua, S. de R.L. de C.V. (&#8220;NSA&#8221;). NSA subsequently transferred ownership of half of its shares in NSC to EWG Water LLC (&#8220;EWG&#8221;) and the other half of its shares in NSC to an individual (the &#8220;individual shareholder&#8221;). In February&#160;2012, CW-Cooperatief paid $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_2_1_2012_To_2_29_2012_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_djn4vltDBUmVX5_2Vdtjgw" decimals="0" format="ixt:numdotdecimal" name="cwco:PaymentsToEnterOptionAgreement" scale="0" id="Narr_MFOI0b9fOEOul0ilbbu__g">300,000</ix:nonFraction> to enter into an agreement (the &#8220;Option Agreement&#8221;) that provided&#160;it with an option, exercisable through February&#160;7, 2014, to purchase the shares of NSC owned by the individual shareholder for a price of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_2_1_2014_To_2_28_2014_HJpTja8YgkGJaUavhR6H2A" decimals="-5" format="ixt:numdotdecimal" name="cwco:PaymentsForOptionExercised" scale="6" id="Narr_6A_FyeGO8EC1evKwp2-tqw">1.0</ix:nonFraction> million along with an immediate usufruct and power of attorney to vote those shares. Such shares constituted <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_2_28_2012_srt_OwnershipAxis_cwco_NSCAguaMember__pEUZLjDdE-w_1NqjlSrvg" decimals="2" format="ixt:numdotdecimal" name="cwco:PercentageOfVotingInterestAcquiredThroughOptionAgreement" scale="-2" id="Narr_QvTUVDLVHUqkpy5r1jm3gQ">25</ix:nonFraction>% of the ownership of NSC as of February&#160;2012. In May&#160;2013, NSC repaid a $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_5_1_2013_To_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_jqPLIJFZdku8X2mo0bAsBA" decimals="-5" format="ixt:numdotdecimal" name="cwco:RepaymentOfInterCompanyLoanPayable" scale="6" id="Narr_NZrrgOssSkuulxBwagCPLQ">5.7</ix:nonFraction> million loan payable to CW-Cooperatief by issuing additional shares of its stock. As a result of this share issuance to CW-Cooperatief, the Company indirectly acquired <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_fXbSxGQDBEil6EJ78NbOyg" decimals="4" format="ixt:numdotdecimal" name="cwco:TotalVotingInterestPercentageAfterConversionOfLoan" scale="-2" id="Narr_oWvQZ9bGl0KLbxVtc-Kn2Q">99.99</ix:nonFraction>% of the ownership of NSC. The Option Agreement contained an anti-dilution provision that required CW-Cooperatief to transfer or otherwise cause the individual shareholder to acquire, for a total price of $<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_5_31_2013_m3JQDoSat0mLyrWfhFiiHA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:SharePrice" scale="0" id="Narr_fk1IcgWL60ivALNFHrJL6g">1</ix:nonFraction> (regardless of their par or market value), shares in NSC of an amount sufficient to maintain the individual shareholder&#8217;s <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow" decimals="2" format="ixt:numdotdecimal" name="cwco:TotalVotingInterestPercentageAfterConversionOfLoan" scale="-2" id="Narr_5NSkpwYN5Eid4BoOUoOcxA">25</ix:nonFraction>% ownership interest in NSC if (i)&#160;any new shares of NSC were issued subsequent to the execution of the Option Agreement (causing the individual shareholder&#8217;s <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow" decimals="2" format="ixt:numdotdecimal" name="cwco:TotalVotingInterestPercentageAfterConversionOfLoan" scale="-2" id="Narr_2V0S9Tu3ZkaUm9h9_TnP2Q">25</ix:nonFraction>% ownership interest in NSC to be decreased); and (ii)&#160;CW-Cooperatief did not exercise its share purchase option by <ix:nonNumeric contextRef="Duration_2_1_2012_To_2_29_2012_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_CYVRFLGpzUqdDV3XmsDmrQ" format="ixt:datemonthdayyearen" name="cwco:OptionAgreementExpirationDate" id="Narr_L8X_SGJWSkCbk5Eo05Z8RA">February&#160;7, 2014</ix:nonNumeric>. CW-</p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">60</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont3" continuedAt="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont4"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Cooperatief exercised its option and paid the $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_2_1_2014_To_2_28_2014_srt_OwnershipAxis_cwco_NSCAguaMember_Eluk4flh70GeTTsoCuRLVg" decimals="-5" format="ixt:numdotdecimal" name="cwco:PaymentsForOptionExercised" scale="6" id="Narr_nRi-bcXsXkqSxy2fPrdT2Q">1.0</ix:nonFraction> million to the individual shareholder to purchase the Option Agreement shares in February&#160;2014.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In January&#160;2018, EWG initiated an ordinary mercantile claim against the individual shareholder, NSC and CW-Cooperatief, (with AdR being named as a third party to be called to trial) before the Tenth Civil Judge in Tijuana, Baja California for Mercantile Matters (the &#8220;Tenth Civil Judge&#8221;). In the ordinary mercantile claim, EWG challenged, among other things, the transactions contemplated under the Option Agreement, and therefore, the capital investment transactions that increased the ownership interest of CW-Cooperatief in NSC to <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_1_31_2018_srt_OwnershipAxis_cwco_NSCAguaMember_NnEiRjWZnkOVOe3bRoZISA" decimals="4" format="ixt:numdotdecimal" name="cwco:TotalPercentageOfOwnershipInterestInAcquiredCompany" scale="-2" id="Narr_O3hlFvfS7EqTb5OOdiL-MQ">99.99</ix:nonFraction>% as a consequence of the Option Agreement. EWG requested that the court, as a preliminary matter (a)&#160;suspend the effectiveness of the challenged transactions; (b)&#160;order certain public officials in Mexico to record the pendency of the lawsuit in the public records (including a special request to register a lien over the real estate owned by NSC); (c)&#160;appoint an inspector for NSC to oversee its commercial activities; and (d)&#160;order public officials in Mexico and credit institutions abroad to refrain from authorizing or executing any legal act related with the activities of the plaintiff, the co-defendants and the third party called to trial to avoid damages to third parties, including those with whom negotiations or any form of commercial or administrative activities, or activities of any other nature related with the &#8220;Rosarito&#8221; water desalination project, are being conducted. The Tenth Civil Judge granted, ex-parte, the preliminary relief sought by EWG, which resulted in the issuance of official writs to several governmental and public entities involved with the &#8220;Rosarito&#8221; water desalination project, including the registration of the pendency of the lawsuit in certain public records.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October&#160;16, 2018, NSC was served with the ordinary mercantile claim. On November&#160;7, 2018, NSC filed a legal response to the claim, vigorously opposing the claims made by EWG. In addition to such legal response, NSC filed (i)&#160;a request to submit the claim to arbitration, based on certain provisions of the by-laws of NSC, (ii)&#160;an appeal remedy against the preliminary relief (which was resolved in December&#160;2019, and ordered the revocation of the order of the Tenth Civil Judge granting EWG the preliminary relief), and (iii)&#160;a request for the setting of a guarantee to release the preliminary relief granted in favor of EWG.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October 1, 2020 and following an order from a Federal Judge obtained by NSC, the Tenth Civil Judge resolved to (i) move the claim of EWG to arbitration, and (ii) suspend the corresponding ordinary mercantile procedure. EWG challenged such resolution, arguing that its notification was not lawful. The Tenth Civil Judge dismissed such challenge, and thereafter EWG filed a remedy against such dismissal. NSC appeared before the court to vigorously oppose such remedy, which has been dismissed. To date, the referral to arbitration has not occurred and, as such, the procedure is currently suspended.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution of the Tenth Civil Judge to move to arbitration, subparagraphs a) and b) that follow describe certain separate amparo claims, and appeal remedies arising from or relating to such ordinary mercantile claim and amparo claims, all in chronological order. Due to the global COVID-19 pandemic, most tribunals in Mexico suspended their activities intermittently since March 2020, with certain such tribunals partially restarting on different dates and with different special rules. As such, several resolutions are pending issuance.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 0pt 36pt;"><i style="font-style:italic;">a) Amparo filed by EWG against a resolution of the Tenth Civil Judge.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">In July 2021, EWG filed an amparo claim against the resolution of the Tenth Civil Judge dismissing the remedy filed by EWG against the October 1, 2020<b style="font-weight:bold;"> </b>resolution within the mentioned ordinary mercantile claim. NSC has filed before the corresponding amparo court a writ vigorously opposing this claim. Considering the foregoing, and that AdR was only named as a third party with interest, it is unnecessary for it to submit arguments against EWG in this claim. Further, CW-Cooperatief has not been notified of this amparo claim.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">Within this amparo claim, the Third District Court in Tijuana granted a suspension in favor of EWG, merely for the effect of holding in place the referral to arbitration subject matter of the October 1, 2020 resolution mentioned above. Such suspension was conditioned on the posting by EWG of a guarantee in the amount of <ix:nonFraction unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q" contextRef="Duration_9_1_2021_To_9_30_2021_srt_OwnershipAxis_cwco_NSCAguaMember_4__250xRJkmbeyT7OJ-G1A" decimals="INF" format="ixt:numdotdecimal" name="cwco:GuaranteeFee" scale="0" id="Narr_sSeGaHSFHUmPSQhWev0TaA">50,000</ix:nonFraction> Mexican pesos, which has not been posted. Regardless of the effects of the suspension and the lack of the posting of a guarantee, NSC has filed an appeal remedy against its granting. </p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">61</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_Hb-oqzYZcUmXAuvu5Aw86g_cont4"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">To date, and following a final hearing that took place in March 2022, a resolution to this claim is pending issuance. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"><i style="font-style:italic;">b) Appeal filed by NSC against the suspension granted in favor of EWG.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">The appeal remedy mentioned in the second paragraph of item a) immediately above was admitted by the superior court on October 18, 2021 and has yet to be resolved.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution to move to arbitration mentioned previously, CW-Cooperatief has not been officially served with the ordinary mercantile claim, and AdR has not been notified that it has to appear for such trial. In any event, AdR is only a named third party called to trial in this claim, and no claims have been made by EWG against AdR.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company cannot presently determine what impact the resolution of this litigation may have on its consolidated financial condition, results of operations or cash flows.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="Tc_sqRrh-00EE61aWaCTygyDw_1_2"></a><a id="Tc_MhPP7cIOY0y55kSyA6k-ZA_2_2"></a><a id="Tc_5HVZq2z3YUy6YFYHUDS8Tw_2_5"></a><a id="Tc_m0-ObSP-DUqTGwmWx-Z-gw_3_0"></a><a id="Tc_h1uQrmhORk-uG_zAmridNA_4_0"></a><a id="Tc_HCEr0hg-Y0Ol4mKX30LMbw_4_2"></a><a id="Tc_mZBdBcN0CkCemXpEqZhH7A_4_5"></a><a id="Tc_6Hk_dGk8uE26LJaL9BJnGg_5_0"></a><a id="Tc_9IOdFLQaTEG79sVs3C--OQ_6_0"></a><a id="Tc_0El35sGwFk6gVXE0YRjOOA_7_0"></a><a id="Tc_-T7uH7V2XUuy1kSIp9ojrw_9_0"></a><a id="Tc_l6X0dRdCuEKQgbytXpfyDg_10_0"></a><a id="Tc_BzEt69Hiq0uJ1RPeSJh67A_11_0"></a><a id="Tc_A6kx0vN9CEeNt5e6m_2h1A_12_0"></a><a id="Tc_-eBnzr4zRkuM5OQa3BUmGQ_13_0"></a><a id="Tc_ew4psX0u4EesFesoXo4Xhg_15_0"></a><a id="Tc_8OF6vbH7wUqVW4j8ZsouIw_15_2"></a><a id="Tc_VzXl4MJQw0W9LGfwo_R8RA_15_5"></a><a id="_da97b67a_3c51_45dc_828c_405bab4e8d17"></a><a id="Tc_0m0MSBBBZEeXfLQM0F3RIg_1_0"></a><a id="Tc_oBXYKqY9Z0ymSPr-pbqV2Q_1_2"></a><a id="Tc_zLpBMZRnCk2eQMAVoCyWVg_2_0"></a><a id="Tc_ao6bikOYWEytukghNa4GDA_3_0"></a><a id="Tc_hdirnZfFZkO3gE-v58nlEg_4_0"></a><a id="Tc_52t_ZHL6fk-ETP4_3iSSWw_5_0"></a><a id="Tc_CXFhfL2z_EimTMRdC93wrg_6_0"></a><a id="Tc_TACDndapP0uMLmjHVOMeJw_7_2"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:IntangibleAssetsDisclosureTextBlock" id="Tb_rYC2NHfqtES34hSoELe8jg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">9. Intangible assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company&#8217;s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: non-compete agreements (<span style="-sec-ix-hidden:Hidden_7Vzzq6mJ2UyIIFUN-Z-LwA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">3</span></span> and <span style="-sec-ix-hidden:Hidden_2CuHKC-KbEypnk7AYihx7Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5&#160;years</span></span>), trade names (<span style="-sec-ix-hidden:Hidden_nq7s2BVEU0y53NOcLsh0Ow;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">15&#160;years</span></span>), customer backlog (<ix:nonNumeric contextRef="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember_PTA0S20ZJ0e5OIrmFA_AAg" format="ixt-sec:durwordsen" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Narr_iQbqjsSXWk-4OnXtEXl5Sg">2 years</ix:nonNumeric>), and facility management contracts (<ix:nonNumeric contextRef="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_OpP9NCQeO06JFuLmPuYNug" format="ixt-sec:durwordsen" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Narr_SGGOkdHVpUGhqm40oydxMA">6 years</ix:nonNumeric>).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The costs and accumulated amortization for these assets were as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="Tb_gVhvah8QbUG5DzY4FfCBkg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc__xTmQN_8nUuOXTt6rCjjbw_4_3">530,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_2gCqSD7VlkCSWAGkXmBIuw_4_6">530,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_LKlHrTCzl0Wd2ozchFSjNQ_5_3">2,700,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_ULAiyoyk50ukiTRXdSZFmQ_5_6">2,700,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_QBadLYxRGUCuCE50uDssGg_6_3">360,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_NkEYBNHkjk6aSiCcNTjLCg_6_6">360,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_iGabdf1R1kmNrkXSNdEtnA_7_3">2,200,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_qdazA85A7kSBcvLjW2lK9A_7_6">2,200,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_jeTS19KAeU-87hXp4L2xEQ_8_3">5,790,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="0" id="Tc_DQmh-Yt5jkSPVhmgi8dFPA_8_6">5,790,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_njHi0h8dQkO_IC0ozrAP-A_10_3">493,889</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_yV66evpc1UmcKjL7po5IrA_10_6">443,889</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_C1FbwYS_Ck-LBQ-o4iaqjQ_11_3">740,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_aNs-LJ7yOEWhd-llVw4ARw_11_6">560,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_KXMqfS_LskmrGQ2rag7Ibw_12_3">360,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_fy8wjz58DEeKfzs_QDlf6w_12_6">210,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_T3bATTvHUUeeuI_89TWfyg_13_3">794,445</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_lrRRuwn6Yka1Bhpqm2u86Q_13_6">427,778</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_9U-sJQvVyUGLNiyn-u_XDw_14_3">2,388,334</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="0" id="Tc_qcEkRNIX8EC5_R8M0zYqfg_14_6">1,641,667</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_c-RjfgkFk0OARsZ-yGUxFA_15_3">3,401,666</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_onjKEgTogUurRt72acz7EA_15_6">4,148,333</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="Tb_l1EziCebIkKlIgFbt4-5DQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization of intangible assets for each of the next five&#160;years and thereafter is expected to be as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" scale="0" id="Tc_21Gca78d1kqkBttZDvnzOA_1_3">582,778</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" scale="0" id="Tc_PhiyE0c8SEiZ4VIvvbsGyg_2_3">546,667</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" scale="0" id="Tc_yL4P2f7A90WaNuRBQcgz6w_3_3">546,667</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" scale="0" id="Tc_fvjLEkpw-k2D8Sb-4YWSjw_4_3">485,554</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" scale="0" id="Tc_y688pogTTU-P8OWTTn3-3A_5_3">180,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" scale="0" id="Tc_GQ9z4ORsDUmVkPeNm929Lw_6_3">1,060,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="0" id="Tc_fYSTI5CnV0ys_hqGch4ScA_7_3">3,401,666</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization expense was $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" id="Narr_yH7ydCpDQE-GYIfWbX_xdw">746,667</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" id="Narr_K3vywZQI-0usygKBM1W0fg">891,667</ix:nonFraction> for the years ended December&#160;31,&#160;2021 and 2020, respectively.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">62</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:LesseeOperatingLeasesTextBlock" id="Tb_3E-9_zjTp0CXv1srOsAPzQ" continuedAt="Tb_3E-9_zjTp0CXv1srOsAPzQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">10. Leases</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company leases property and equipment under operating leases, primarily office and warehouse locations. For leases with terms greater than twelve months, the related asset and obligation are recorded at the present value of the lease payments over the term. Many of these leases contain rental escalation clauses which are factored into the determination of the lease payments when appropriate. When available, the lease payments are discounted using the rate implicit in the lease; however, the Company&#8217;s current leases do not provide a readily determinable implicit rate. Therefore, the Company&#8217;s incremental borrowing rate is estimated to discount the lease payments based on information available at the lease commencement.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">These leases contain both lease and non-lease components, which the Company has elected to treat as a single lease component. The Company elected not to recognize leases that have an original lease term, including reasonably certain renewal or purchase obligations, of twelve months or less in its consolidated balance sheets for all classes of underlying assets. Lease costs for such short-term leases are expensed on a straight-line basis over the lease term.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The land used by the Company to operate its seawater desalination plants in the Cayman Islands and The Bahamas is owned by the Company or leased to the Company for immaterial annual amounts and are not included in the lease amounts presented in the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">All lease assets denominated in a foreign currency are measured using the exchange rate at the commencement of the lease. All lease liabilities denominated in a foreign currency are remeasured using the exchange rate as of the consolidated balance sheet date.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective March 9, 2021, the Company entered into a new office lease for the existing office located in Coral Springs, Florida under similar terms compared to the prior lease. This new lease expires, including all renewal options, on March 8, 2031.</p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">63</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_4caf3049_fb85_4fff_b0f3_18f0738be51b"></a><a id="Tc_DJ3airjFoUuPfydPbgwEoA_1_2"></a><a id="Tc_AXOyTctObESUS9PuCrlLSw_2_2"></a><a id="Tc_VBvnDDSwt0-Fqtr1GFXZjQ_2_5"></a><a id="Tc_nZBDjkevI0CJ_3YgtGvZQQ_3_0"></a><a id="Tc_-Jm7suo3wE6uQlv6kgcqNA_4_0"></a><a id="Tc_ELcNzNXYI0KfcWs4Dn-p0g_5_0"></a><a id="Tc_L6UJO55-lUCoRa3Mvb_DXw_5_2"></a><a id="Tc_IyXlzUN55U6vUb8EGUNjdg_5_3"></a><a id="Tc_RyI9Y_MEBUSRVMnYEDm5dA_5_5"></a><a id="Tc_Bo0ruMkRakGEgrudBsszKg_6_0"></a><a id="Tc_VDSVjf5r9k6oyU2YUmiN_A_6_6"></a><a id="Tc_uOC9kmcIL0qmBumBStVRog_7_0"></a><a id="Tc_6XRuYG1f2ECi-nbn66AHeg_8_0"></a><a id="Tc_YXRmKhXOK0-OWQENcZtqWg_9_0"></a><a id="Tc_cfY_WFtTvUeY4ptQuPHxXA_10_0"></a><a id="Tc_FJgNCuW2sk6mZ1GSm0LpNA_10_2"></a><a id="Tc_A9qWaXcjqEuUrUIZXv2pXQ_10_5"></a><a id="Tc_4zeJAC-SQ0-Z73KVsTPU4Q_12_0"></a><a id="Tc_x5tfZawqvUuAzYACANfywQ_13_0"></a><a id="Tc_9At45XnQv0e37UeW86wiqw_14_0"></a><a id="Tc_tUFibGDVDkWypk1XWOD2Fw_14_2"></a><a id="Tc_WKSO2kILXUCkHRx74Y6QbQ_14_5"></a><a id="Tc_cYUTeihqJ0SKvjRAlzDtfA_15_0"></a><a id="Tc_iryK5g6gDE6OoVs45vHMyg_16_0"></a><a id="Tc_DjVfs53sjUauH5A53MYVxA_17_0"></a><a id="Tc_5kSMz0E4cESVFeF_QNkt8g_18_0"></a><a id="Tc_Am6jE-ONO0KNsm79x4sgYA_19_0"></a><a id="Tc_wLwkixooYkyJdr_VEFDfQA_19_2"></a><a id="Tc_QF7JgDfa8UaZiLessHGadw_19_5"></a><a id="Tc_147PRCJmyUivdCA48wVMHQ_21_0"></a><a id="Tc_XlkVm7XufkiJchIDluz0aQ_22_0"></a><a id="Tc_aV8xje_t0EWrepGQZW4HTw_22_3"></a><a id="Tc_S9Io3lnHrUyuMG4zqsFyvw_22_6"></a><a id="Tc_76NmHxDbQU2CST9ju1vEHg_23_0"></a><a id="Tc_XRzDhI51fECftysDUfRuTw_23_3"></a><a id="Tc_44Zq0yxB_kOrIVKKc6P6lQ_23_6"></a><a id="Tc_MaBh4om7P0e5IX90DqAXrw_25_0"></a><a id="Tc_BbuEswawbEuUkrxGrXwRZw_26_0"></a><a id="Tc_acBpzdqVtEObtMHQ_lyaXg_27_0"></a><a id="_5737587f_975d_4ee7_882a_5acd93877328"></a><a id="Tc_t0bG07NiBU6czSWKGMOcxA_1_2"></a><a id="Tc_imHZzvr-JEmVhdipr8JlYQ_2_2"></a><a id="Tc_C1sy1QMVxkyVuP1opm_dOw_2_5"></a><a id="Tc_d4n3mTa0-kKNZa7mJ91IYQ_3_0"></a><a id="Tc_yfOW616aJUqAMBb2CwMDaA_3_2"></a><a id="Tc_01ecbozVvka4FjGsQvF3nQ_3_5"></a><a id="Tc_tRK93SQUikKDExYiQezeXg_4_0"></a><a id="Tc_j0-lwVXjwkmq1DYXEcv5ug_5_0"></a><a id="Tc_RZ26uPurQUOLrB7YQUgajQ_6_0"></a><a id="Tc_zus6j6IeyUC5lz6WSKJZYw_6_2"></a><a id="Tc_JxLWa4bws0-84_Zy0i032A_6_5"></a><a id="_b09eeb69_415b_4f7c_a865_5063138cf918"></a><a id="Tc_GlRJtyafgE-CPlcL1qDaqw_1_2"></a><a id="Tc_Z-BLP44sk0mTDve_JHU4Rw_2_2"></a><a id="Tc_ve_mpKhvQEaXUIq4N1JLVw_2_5"></a><a id="Tc_ZKq7hxUQKk-tdpiNX26zbA_3_0"></a><a id="Tc_CzOgFY3FMk2v3ZDBERAZrA_4_0"></a><a id="Tc_WRp8pkTwK06B-NOmqdC-Ew_4_2"></a><a id="Tc_F8qsfthnaE-L0lcqlwuK7g_4_5"></a><a id="Tc_1zOBFj6oX0iUkmRmPUBNGg_5_0"></a><ix:continuation id="Tb_3E-9_zjTp0CXv1srOsAPzQ_cont1" continuedAt="Tb_3E-9_zjTp0CXv1srOsAPzQ_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Lease assets and liabilities</i></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" id="Tb_VeXny9Ss-UeWzKxF5ogCVQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">ASSETS</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_oww2NlKTikmmAbu_wf9sNQ" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseAssetsCurrent" scale="0" id="Tc_z2hzI10VYkW6feoNtG-6Yg_5_6">108,303</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" scale="0" id="Tc_i1h62rOWkUKGofYjEEQ8kQ_6_3">2,654</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" id="Tc_8TOml4kslU6Ob81soZ_KyQ_8_3">2,681,137</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" id="Tc_ustCKspgQ0qvUfjy_vd5gw_8_6">1,329,561</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" scale="0" id="Tc_k2YoLQ2IlU6QrgUx-ipwpw_9_3">16,898</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" scale="0" id="Tc_nd5d-bLiSkC6d7sMZHkLVw_9_6">33,909</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseRightOfUseAssetNet" scale="0" id="Tc_JjlNBnA5UkGxOErwgIvQaA_10_3">2,700,689</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseRightOfUseAssetNet" scale="0" id="Tc_B9E3MfSsc0-0JptD34O9qg_10_6">1,471,773</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">LIABILITIES</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" id="Tc_I3nFLui3pUCIx8zh1EYsIg_14_3">592,336</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" id="Tc_Z5X6StMw1kih7jfOkmAFig_14_6">455,788</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" scale="0" id="Tc_BvRBCClFEE-jezh6uEhMIA_15_3">11,195</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" scale="0" id="Tc_09yT4ma3qka58nSDifDkLQ_15_6">29,432</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" id="Tc_Cp-iPRE9qE-37mygAentGQ_17_3">2,137,394</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" id="Tc_5IhNAiGJBEqQNwNCKVc5xg_17_6">982,076</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" scale="0" id="Tc_rWHCY1eX8kmDe5YomDGhag_18_3">7,819</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" scale="0" id="Tc_eoGI2BbKf0W5w5O2I30tpw_18_6">2,499</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations" scale="0" id="Tc_G8RZLl7Dw0CJhuYs4jdCeQ_19_3">2,748,744</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations" scale="0" id="Tc_0sIEPj0Uw0am-1OgvXF8Zw_19_6">1,469,795</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average remaining lease term:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_eDTD1lgnZkSdGnSBnGGXcg">7.0</ix:nonNumeric> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_9hp6aLL40EOo-FjcHE6lQg">3.4</ix:nonNumeric> years</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_Y0un-5sTjkm-0nbA0McW8g">1.6</ix:nonNumeric> years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Narr_5qcP9z-V00q_v5r5GTNkpg">1.1</ix:nonNumeric> years</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average discount rate:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="6" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_lBA-ra9viESyTP4E7p0O9A_26_3">5.03</ix:nonFraction>%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="6" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_tCrU2I1L10KUQyWmNj4Maw_26_6">4.15</ix:nonFraction>%</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw" decimals="6" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_jAOq8G7120GJG7G7VI7lCw_27_3">4.77</ix:nonFraction>%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ" decimals="6" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="Tc_0BH6gbXhNEGY4hpJXthumQ_27_6">3.48</ix:nonFraction>%</p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:LeaseCostTableTextBlock" id="Tb_u9_QWCsm106UJexTRhej3w" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of lease cost were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseCost" scale="0" id="Tc_XQza6HtBGUaB7TRbNHFSjw_3_3">656,130</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseCost" scale="0" id="Tc_pcuaELjeKE-XA-7ti-Ws5Q_3_6">773,756</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Short-term lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShortTermLeaseCost" scale="0" id="Tc_AAliSwodsUyTe2P1FQ41-w_4_3">79,606</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShortTermLeaseCost" scale="0" id="Tc_B_1BnQUIzkybnek9tYrDAg_4_6">5,518</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lease costs - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseCostsDiscontinuedOperations" scale="0" id="Tc_XbbdsPhyiUeMBPQnE2FJ0A_5_3">31,281</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseCostsDiscontinuedOperations" scale="0" id="Tc_iM4wdBVC-0OtUY2xdUmHnw_5_6">127,983</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="0" id="Tc_XI7JGMHMH0mumL_obzImdg_6_3">767,017</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LeaseCost" scale="0" id="Tc_oe_zFKnuS0a8QjXKGvJuLA_6_6">907,257</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" id="Tb_qQQsm1cYTkGyNnVdp_HIrw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Supplemental cash flow information related to leases is as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100.17%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash paid for amounts included in measurement of liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="0" id="Tc_nTQJYg0QcUOe2yrXbSt33w_4_3">710,024</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeasePayments" scale="0" id="Tc_6Mg4n43FAkuHthF65h2uVQ_4_6">708,095</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseDiscontinuedOperationsPayments" scale="0" id="Tc_Lb03O1bg60yGF8zhj9a_uQ_5_3">38,246</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseDiscontinuedOperationsPayments" scale="0" id="Tc_z0-roEH5I0mQDvZCORcHXA_5_6">127,153</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">64</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_4Vhe8idx6kC1jy3ueLfVqg_1_0"></a><a id="Tc_EtrfGfwW6kaDI6aXjwTmCg_1_2"></a><a id="Tc_DzpywSLsKkOzuRtkidJE-w_2_0"></a><a id="Tc_djZJSCkQT0y_vxliSdwbvQ_2_2"></a><a id="Tc_7r-iSvrGP0qrnUUhOQuDLw_3_0"></a><a id="Tc_FjIvyo6OkUyBVZUQ5kvkdw_4_0"></a><a id="Tc_w1DV2W-8EEKsNahdltDBeA_5_0"></a><a id="Tc_M7mXakfWVUS9UZ4BQj7Thw_6_0"></a><a id="Tc_UJshfmscUU-BFxL8CxcanQ_7_0"></a><a id="Tc_d2KPesxQ90iAV1yaDU_0GA_8_0"></a><a id="Tc_OwUbbQkydEqx6b39_CcFMQ_9_0"></a><a id="Tc_qGHdzsxgl0-D2IRvMuO4Xw_10_0"></a><a id="Tc_aSyE8PED8E-uwLuq_RXKjQ_11_0"></a><a id="Tc_QB2bSlFhxkWZcR9ROn1ZoA_12_0"></a><a id="Tc_xk8cjK3bW0OXsiKnM_rKjg_12_2"></a><ix:continuation id="Tb_3E-9_zjTp0CXv1srOsAPzQ_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Future lease payments relating to the Company&#39;s operating lease liabilities from continuing operations as of December 31, 2021 were as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="Tb_wGc4hmgSi0GR8-gurADGMw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ending December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" id="Tc_JIZxzIC3_06OxJx6xCbQkg_2_3">665,817</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="0" id="Tc_uoSoU97VQEelwXE_ENb_MA_3_3">643,234</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="0" id="Tc_s9p7RYVCrU2uNQyJZK9F7w_4_3">390,629</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="0" id="Tc_XhqdY48rOE-A44vzD-Gwqg_5_3">268,056</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" scale="0" id="Tc_nxQVMTVH7EqrJbqmNBW8Wg_6_3">227,541</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" scale="0" id="Tc_gWuibc18FUCZgLBRwDPHqw_7_3">1,025,239</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total future lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="0" id="Tc_hJveIxligka2bP0kLAdvGQ_8_3">3,220,516</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="0" id="Tc_FTEfgNPhg0aCcQIEceDqTg_9_3">490,786</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:OperatingLeaseLiabilitiesContinuingOperations" scale="0" id="Tc_uRtyGdaIFk6kJv07A_tBng_10_3">2,729,730</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" id="Tc_RK-yyZCHFkGiI1MEngw9fg_11_3">592,336</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" id="Tc_jBs6Bo7NrUqlIdGsDRM1eQ_12_3">2,137,394</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="_30eeeb59_ce6e_45cd_be07_34f47a681c33"></a><a id="Tc_2YIbLUGgNkm4A5wkg_mCuQ_1_2"></a><a id="Tc_ge9kMZqmf0eklCgR54JFGQ_2_2"></a><a id="Tc_eV0rM1SppEik2XIzPnDM-g_2_5"></a><a id="Tc_wFrbiawd1kmj_7u-HFWecw_3_0"></a><a id="Tc_a_iQ_KwORkmxNDdwutPGUQ_3_2"></a><a id="Tc_Dq-dyokDAEaFBJ621EoOhA_3_5"></a><a id="Tc_rWH7PHgePUm50u3Y3yjo2A_4_0"></a><a id="Tc_EPpHcjr7iUyKKSLwi1CpSw_5_0"></a><a id="Tc_8sW8UkfnXE-NU12ZfjW8RA_7_0"></a><a id="Tc_6NOV_rKvlU-t--d1_5uLZg_8_2"></a><a id="Tc_yGWgN60TBEK2Uo-VFCZ2fg_8_5"></a><a id="_15d52da1_0a0c_4c1f_bd5b_661d210f02b9"></a><a id="Tc_W2eZNxaT_EigzgAkDnDSJQ_1_2"></a><a id="Tc_JZ-CrZSnN0SfLVQzMVXXZA_2_2"></a><a id="Tc_Ri2gzJu9cU-PvTb5IK5O7Q_2_5"></a><a id="Tc_hsUFsa0byU6iq9ckF_aTyw_3_0"></a><a id="Tc_AbV7OaUcyUuzZzVS6Mkybw_4_0"></a><a id="Tc__9A6qThY9UutDU32ypPXEQ_4_2"></a><a id="Tc_Aav7VpBX60CS2korQAhiUg_4_5"></a><a id="Tc_VC4aqrhHMki4nPNge05ZuA_5_0"></a><a id="Tc_X3HS6y7lyU-8U7tIHVxd2g_6_0"></a><a id="Tc_17-Nfkn6hUKGMmRIhi6zgg_6_3"></a><a id="Tc_4do6twtPF0SrQRTdGq92jw_6_6"></a><a id="Tc_A3_QbPM2S02iHyCwqHnKRg_7_0"></a><a id="Tc_ag5LvkUdTUCgEmSqrWErEQ_8_0"></a><a id="Tc_w_qZ37KlCkG46ZFZqcZgvg_9_0"></a><a id="Tc_f4fRX3mWTkaw5TLakHd_Qg_10_0"></a><a id="Tc_8odHldK3SE-184qoBBCM6g_11_0"></a><a id="Tc_foR62qP8lEuoW1mUA_CbXQ_11_3"></a><a id="Tc_ZbEDjNRQYUK10bo9VXaZjw_11_6"></a><a id="Tc_tDPOJ_pvlEOrLOuLSVgcYg_12_0"></a><a id="Tc_8nM7_mZH0k6cGcvvv7mLpQ_13_0"></a><a id="Tc_I2-jZl6ow06oAtFtZoMAeg_13_2"></a><a id="Tc_MNl1ODdoxEGJlLTCOOajcQ_13_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:IncomeTaxDisclosureTextBlock" id="Tb_AexQtayDhESewEamVQQQ0Q" continuedAt="Tb_AexQtayDhESewEamVQQQ0Q_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">11. Income taxes</b></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" id="Tb_sPj0eNzldkOpfnBVm95fKA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of income before income taxes for the years ended December 31, 2021 and 2020 are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Foreign (not subject to income taxes)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" scale="0" id="Tc_wPPph8YzJUetISTYtRPyCA_3_3">5,780,692</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" scale="0" id="Tc_Ex6-sp8V8keueXh3akNe_A_3_6">6,475,693</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Mexico</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" sign="-" scale="0" id="Tc_3zgxJSxzh0au6MePmfhBKQ_4_3">1,767,915</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" sign="-" scale="0" id="Tc_VcEfnshfAUui25P79P6Yrw_4_6">4,903,988</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" sign="-" scale="0" id="Tc_yEpnynRrt0CLlq5BUriPnw_5_3">2,952,265</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" scale="0" id="Tc_CHt91PxZ3UKo8e4xviptOw_5_6">2,956,552</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" scale="0" id="Tc_Y-ZtJtH72EevTOZ6hZX_cA_6_3">1,060,512</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" scale="0" id="Tc_WwdDrTIj4UWoWIYBOWBTbA_6_6">4,528,257</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_4-qdNYQt40-5SrCNTNxeKQ_7_3">2,574,079</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:IncomeLossFromDiscontinuedOperations" scale="0" id="Tc_7GEQm4-WyUyqEPWwfgpJaQ_7_6">4,902,243</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_494A2qRe9kGyhGXud_nhYA_8_3">3,634,591</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_kA39YqrcHEWRnGT56m21xg_8_6">9,430,500</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="Tb_R-4Y96EqyU2kbtmMifmsew" continuedAt="Tb_R-4Y96EqyU2kbtmMifmsew_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company&#8217;s provision (benefit) for income taxes for the&#160;years ended December&#160;31, 2021 and 2020, which related to U.S. operations, consisted of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="0" id="Tc_ZzNZEIb8TEaHfff8IG6ipA_4_3">202,444</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentFederalTaxExpenseBenefit" scale="0" id="Tc_0txe33x3Sk2bAuCPfpc90A_4_6">191,322</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" sign="-" scale="0" id="Tc_c7VuH7qQxUKK23cfXkVoyQ_5_3">895</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" scale="0" id="Tc_hXnlDnRVWkuyqo3KmrcCMA_5_6">87,630</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="0" id="Tc_uDtX8NstMkazEhpQE9GYUg_7_3">201,549</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CurrentIncomeTaxExpenseBenefit" scale="0" id="Tc_di7zqYd6qk23tbwuKZ_qCg_7_6">278,952</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_sFhGCcFAmkSMabRimxyyAw_9_3">524,733</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_gOJKM-CCi0Kau59ag_UJaw_9_6">132,957</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_HP7npg-Gt0GEsMEWyZpmCA_10_3">124,798</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_3RS68s5FIECW-VFr_MHp0w_10_6">59,271</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" sign="-" scale="0" id="Tc_U8ay1qZJbUOlmvxIQLVF2w_12_3">649,531</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" sign="-" scale="0" id="Tc_A7Kq967A50uxZhj1cCj17g_12_6">192,228</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total provision (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_1STA0NuAlkK34tuDJsa0GA_13_3">447,982</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" id="Tc_yCuZzoIc60iHUdi27vHDLw_13_6">86,724</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">65</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_1db4ae32_c6b0_4ce5_b979_6f09bc7296bb"></a><a id="Tc_u__cKNyzwU2gQ4u913xkiQ_1_2"></a><a id="Tc_hdDDzUyN6UiQ3ezHwQE4wQ_2_2"></a><a id="Tc_8Fl9PA4RDEevTSRmyqPFyA_2_4"></a><a id="Tc_9vOI2Ej_-kqFJBOu2AEvrg_3_0"></a><a id="Tc_lYu2KXKoBk-275ILapP2Cg_3_3"></a><a id="Tc_m9m8ZS1DGUyYbkg03XceFw_3_5"></a><a id="Tc_9bM5yQM41kqbHF-6pmRBDg_4_0"></a><a id="Tc_NHTM6ovSFESDdMoBBRLnyw_4_3"></a><a id="Tc_J_8q079l7EiRnMZ_Yqi3Vw_4_5"></a><a id="Tc_dlGGyHFtsE6R_6trVvqcUw_5_0"></a><a id="Tc_jNeZ0Wgq_EmGCsY0OfrYVg_5_3"></a><a id="Tc_GPvK3s384kuuvjKHP_y1ig_5_5"></a><a id="Tc_z0afDaGdc0KQniyt3GQlxw_6_0"></a><a id="Tc_TfMRMSynFkKeOdfuT2t_mQ_6_3"></a><a id="Tc_hq_DfCB3_kulXq7ieLCSFQ_6_5"></a><a id="Tc_gka7RWTItUiD_c7eVzM3Dw_7_0"></a><a id="Tc_99IX8eNrIUqeAAZLRlZBdQ_7_3"></a><a id="Tc_kDP--cGQAkqDdYRoj9K18w_7_5"></a><a id="Tc_fbmlSX2YukeG6spJHtWG-g_8_0"></a><a id="Tc_DlXSR5FqF0qjprqDaEdkgQ_8_3"></a><a id="Tc_brUw1YuBxkCmUiGMjYFO_w_8_4"></a><a id="Tc_wVE3sBNGMUiaH8rb8u_ZKA_8_5"></a><a id="Tc_tuJT2tzTAUOtEaY-7sq-HQ_9_0"></a><a id="Tc_DUdzbt1nAEKVPqJquXSHSA_9_3"></a><a id="Tc_z_F9pGundE2HT72pTaNdjg_9_5"></a><a id="Tc_DaWNME3PM0SAqlsvbyvbmw_10_3"></a><a id="Tc_krfwIOmEDUSaX3G07l5Hwg_10_5"></a><a id="_a1b1ed10_093d_4541_8a70_0529b5403516"></a><a id="Tc_4agWiJYRu0Wf8jto6P--Pw_1_2"></a><a id="Tc_YFjdUXLlkkmp_vTqbFdyxw_2_2"></a><a id="Tc_qiyLN-ChT0WSUr5Ucpal3g_2_5"></a><a id="Tc_uTAWOOynPkGB4eW0DPiwqg_3_0"></a><a id="Tc_t5I4HXc_Gk2onLMfALIiRQ_4_0"></a><a id="Tc_bxSQp8kUWEeXnvM4OfFtrg_5_0"></a><a id="Tc_zmkl1rjvb0mmQU3Lr6DQjQ_5_2"></a><a id="Tc_6H9wy27qbUGkybyNTpkE5g_5_5"></a><a id="Tc_n3qQzw_ze0u1-TIgpxlwoA_6_0"></a><a id="Tc_XX6Lwrb5mUKYwoTRpDdZPQ_7_0"></a><a id="Tc_r65r6dSNoUSlpiOH6BLD4w_8_0"></a><a id="Tc_5k0B-iDV6Uyej7VIsYVVZA_10_0"></a><a id="Tc_cVI258VGNk2JSfLIC_iQ_A_11_0"></a><a id="Tc_f05VRo2seka-87L8GkgZYA_12_0"></a><a id="Tc_tDg-KuCAiUO4y9ys-zDdQw_15_0"></a><a id="Tc_xIXVYjDluUe6Gj4SAeQVqQ_15_2"></a><a id="Tc_ySbNe69aOUW62BR-QiPOpw_15_5"></a><a id="Tc_gGIWbdIKZkypgaMR3NULzQ_17_0"></a><a id="Tc_50qPWOsDO02HzwJd7H1gkQ_18_0"></a><a id="Tc_r7DNvKLIyEagZ3CTTqrVJQ_19_0"></a><a id="Tc_8FVyum_4mEOWdLWkjITHtA_19_2"></a><a id="Tc_w5PT4FJ9bEClxU_QMJqTMQ_19_5"></a><a id="Tc_xex9mdxYl0eiOQCESDhaLg_20_0"></a><a id="Tc_76XYaxlZZEiqb6pW1GdgEA_21_0"></a><a id="Tc_wRyaQffgS021oMkCFreZmw_22_0"></a><a id="Tc_z9tMS77km0ucW_6BGxHiLQ_23_2"></a><a id="Tc_7RnwcYhyKUixcGSMELpF5w_23_5"></a><ix:continuation id="Tb_AexQtayDhESewEamVQQQ0Q_cont1"><ix:continuation id="Tb_R-4Y96EqyU2kbtmMifmsew_cont1"></ix:continuation><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="Tb_baNAL0hUsk6LdTFg2VbwJA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A reconciliation of the U.S. statutory federal tax rate to the effective rate for the&#160;years ended December&#160;31, 2021&#160;and 2020 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:24.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. statutory federal rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="Tc_ZFn6Py7Xe0WSNGnWEq-syQ_3_2">21.00</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="Tc_JGeSqaMZPkmWTkJSXky0tg_3_4">21.00</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">State taxes, net of federal effect</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="Tc_0ahr2LBGwkKUp1hdmcOJeA_4_2">2.72</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" scale="-2" id="Tc_6hptT86P1k2uLd0Q-qTdqw_4_4">4.00</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Nontaxable foreign income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" scale="-2" id="Tc_9_Ekmz5080mrHDr9wncWvg_5_2">43.36</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" scale="-2" id="Tc_PRCO1_cpV0SVrZr14ZScAQ_5_4">17.28</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Research &amp; development tax credit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" scale="-2" id="Tc_tiQveM2gTE6roV8OHGGV0w_6_2">7.39</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" scale="-2" id="Tc_XdONTTlLcUm55Zpgaf1f_w_6_4">11.73</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Permanent items</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="cwco:EffectiveIncomeTaxRateReconciliationPermanentItems" sign="-" scale="-2" id="Tc_6inog7dj70me_mQeQ8KxiQ_7_2">6.26</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="cwco:EffectiveIncomeTaxRateReconciliationPermanentItems" sign="-" scale="-2" id="Tc_clu-pU-ZPk-alrsApsqbTg_7_4">0.67</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill impairment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="cwco:EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" scale="-2" id="Tc_K96dMSUAr0mX_TDgcg4pEw_8_2">20.31</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Valuation allowance for deferred tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="Tc_BTYXaunSOEC470iieoZb1w_9_2">0.65</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" scale="-2" id="Tc_l2uANOi2PU-Ho23IYpmVCw_9_4">5.60</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" sign="-" scale="-2" id="Tc_cAhfC4KgpkiWCmWlljbXcw_10_2">12.33</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="Tc_f8RILqixcUi8L0ABXpJbYQ_10_4">0.92</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="Tb_w26EfvG9Z02adMGF8iWj2A" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The tax effects of significant items comprising the Company&#8217;s net long-term deferred tax liability as of December&#160;31, 2021 and 2020 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.68%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Continuing Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Research &amp; development tax credits</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" scale="0" id="Tc_9tTh31QvU0ekz9_UkGmaAA_5_3">398,413</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch" scale="0" id="Tc_CIQA6KQIbE25dnW-xO3MKg_5_6">613,003</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Loss carry forward</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsCapitalLossCarryforwards" scale="0" id="Tc_I5k5V0sxXEWyMkVRWh5nYg_6_3">300,545</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:zerodash" name="us-gaap:DeferredTaxAssetsCapitalLossCarryforwards" scale="0" id="Tc_DB7IMLyW2EyR_JBSfis6Sg_6_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Accrued compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="0" id="Tc_JJMJpSftm0Kf90qmy-IMsA_7_3">112,446</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" scale="0" id="Tc_9m1OUcCQkUWBWK03tQIOkw_7_6">110,092</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Valuation allowances</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="0" id="Tc_GGIoYFvUvkmjexhXS8WgGQ_8_3">139,207</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="0" id="Tc_Po0S76xW7EeE_UP-Ngwb_w_8_6">496,343</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsNet" scale="0" id="Tc_2uuZ6mUxO0GQtjR9FYZUag_9_3">672,197</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsNet" scale="0" id="Tc_BVZ8YvoLeEyq-k2M72vLSA_9_6">226,752</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" id="Tc_IsH59UudZEe_apMNx_8ZSw_11_3">254,301</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment" scale="0" id="Tc_2P06uuBRMkOPYzJnCP95NQ_11_6">252,800</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" scale="0" id="Tc_ef4DuiuGSUab0vexHPCqxA_12_3">982,422</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" scale="0" id="Tc_Cq4qUgR5uUayxiYZODiLsA_12_6">1,188,009</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="0" id="Tc_OFwRqQco1EmftNLHiAHjcQ_13_3">1,236,723</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredIncomeTaxLiabilities" scale="0" id="Tc_mJ4UPYQ-Lku9x0_jdSDtfA_13_6">1,440,809</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net deferred tax liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilities" scale="0" id="Tc_R81E8WC0oUC43JEV2xYoVg_15_3">564,526</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxLiabilities" scale="0" id="Tc_pwa1g0_OtU-Fk4zfIeKWPA_15_6">1,214,057</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Discontinued Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets: </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Operating loss carryforwards - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign" scale="0" id="Tc_7uVPVXTxMUy9lSRJ2fUJYA_19_3">4,230,398</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign" scale="0" id="Tc_zkOanF1BmkioDoahFbXU5A_19_6">4,296,453</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Land basis difference - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="0" format="ixt:numdotdecimal" name="cwco:DeferredTaxAssetsLandBasisDifference" scale="0" id="Tc_x53CHHmPV0uGd4K8ZaaSUQ_20_3">1,602,470</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w" decimals="0" format="ixt:numdotdecimal" name="cwco:DeferredTaxAssetsLandBasisDifference" scale="0" id="Tc_lFT84g903EuM2OYN0uIf-w_20_6">1,262,159</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Start-up costs - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="0" format="ixt:numdotdecimal" name="cwco:DeferredTaxAssetsStartupCosts" scale="0" id="Tc_QJ8lddVttkmHaOYaO6Alxw_21_3">4,693,395</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w" decimals="0" format="ixt:numdotdecimal" name="cwco:DeferredTaxAssetsStartupCosts" scale="0" id="Tc_AKUYEWOhlk-Qg72qNgHhOQ_21_6">4,904,337</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Valuation allowances</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="0" id="Tc_NowHWn_kTkGH9q7asRloqQ_22_3">10,526,263</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsValuationAllowance" scale="0" id="Tc_nhGzw-b55k-PQVKXExQO5w_22_6">10,462,949</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="0" format="ixt:zerodash" name="us-gaap:DeferredTaxAssetsNet" scale="0" id="Tc_M1bPydd_qki6kOVDUS3-Vw_23_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w" decimals="0" format="ixt:zerodash" name="us-gaap:DeferredTaxAssetsNet" scale="0" id="Tc_y6eID5I1T0S5VGrbge3tZw_23_6">&#8212;</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December 31, 2021, continuing operations has a federal net loss carryforward of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember_VKsJALKJqkmUBfrieQXVyw" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="Narr_PmRjkbxNQkyGcBbz7YAsmw">1.2</ix:nonFraction> million and a state net loss carryforward of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember__DZ4cNPD0EWFbocUw4NusA" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="Narr_dHhKsQmdckieiP71kcgkUw">1.1</ix:nonFraction> million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="Narr_srsPrfwNCUmJrwcVln8Wyg">14.1</ix:nonFraction> million that will begin to expire, if unused, in various amounts between 2022 and 2041.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:EarningsPerShareTextBlock" id="Tb_DeeMjdKtaUaDiofjvlNg5g" continuedAt="Tb_DeeMjdKtaUaDiofjvlNg5g_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">12. Earnings per share</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Earnings per share (&#8220;EPS&#8221;) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (loss) (less preferred stock dividends) available to common stockholders by the weighted average number of common shares outstanding during the period. The computation of diluted EPS assumes the issuance of common shares for all potential common shares outstanding during the reporting period and, if dilutive, the effect of stock options as computed under the treasury stock method.</p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">66</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Tc_FU9h3YYzrUy0vweQzFF_VQ_1_2"></a><a id="Tc_3DlcIhr72kO8JER1OcQ_jw_2_2"></a><a id="Tc_GSJPag5T6Uq91hy8-F_QRg_2_5"></a><a id="Tc_EEvah6WhE0qrdC4ss1RhZw_3_0"></a><a id="Tc_Uac_0TByAE21ypRZF995Wg_3_2"></a><a id="Tc_qwqpUUGCRkSMgXz5sDcLLw_3_5"></a><a id="Tc_fHYclRd1lEOOfJ9vhOHOOw_4_0"></a><a id="Tc_wxJ8PpsHrk-br6hwO9JLew_5_0"></a><a id="Tc_aIMA9kAT00i18C_T272XSg_6_0"></a><a id="Tc_RRCTkcPU1kySeQbYSPsklg_7_0"></a><a id="Tc_PeE7kMD2w0iVQm6q1EKycw_7_2"></a><a id="Tc_sMd_IbhWI0e1H0cQ3C3Wpw_7_5"></a><a id="Tc_Gnnwdea7D0agnHEdLxTtxQ_9_0"></a><a id="Tc_dp_1BxQRGEOQ7-irWE8Y8w_10_0"></a><a id="Tc_LR7lfgklN0uYGLx0s31_7w_11_0"></a><a id="Tc__fDRB6ZIV0yVcwJ4NKO9HQ_12_0"></a><a id="Tc_V__c_D5_rES8_Ii-GONcDQ_13_0"></a><ix:continuation id="Tb_DeeMjdKtaUaDiofjvlNg5g_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following summarizes information related to the computation of basic and diluted EPS:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="Tb_S0QkeaZfgU2Zc-WIpIZe9Q" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_rPmAV5hSQUWeg_CNF3Cw1Q_3_3">3,449,658</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_vJzerMZLKEi-RpAfVURUAw_3_6">8,613,771</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: preferred stock dividends</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPreferredStock" scale="0" id="Tc_PXdsEMCck0CQeco9BLRjdA_4_3">10,796</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPreferredStock" scale="0" id="Tc_q08bBS8RT0SQ9ubxaS5hLg_4_6">11,740</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" scale="0" id="Tc_3SM9iHrR_USnLjDL575qpQ_5_3">3,438,862</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" scale="0" id="Tc_E3hqJhnTcUCMsl6haJaj9w_5_6">8,602,031</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_A1P7syj4CkqhtHF9GAbO9Q_6_3">2,574,079</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_mnQAaHK1kUK8SY7mtkj-Kw_6_6">4,902,243</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic" scale="0" id="Tc_w5oc5wM6wkmgOGtCK-A2Tg_7_3">864,783</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic" scale="0" id="Tc__ieK9SQmj0ehmv-GBvHUAA_7_6">3,699,788</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_Fh02H0OhEUqwZO0uFwbfKQ_9_3">15,213,816</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" id="Tc_f3BZlgTFTkCoLVzKQJbvjA_9_6">15,119,305</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plus:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of preferred shares outstanding during the period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock" scale="0" id="Tc_igq1xdAugEWwEPxpXyM3nQ_11_3">30,348</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock" scale="0" id="Tc_Ea92kTMLW0SCjKIvO8mtJQ_11_6">33,814</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Potential dilutive effect of unexercised options and unvested stock grants</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants" scale="0" id="Tc_jPYYx9PjdEaks0qNjGVR5w_12_3">65,981</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants" scale="0" id="Tc_uP012xDtKkexS8LL0lqwPg_12_6">70,836</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_UWyfmrGsOUGs_t9P3WlPBA_13_3">15,310,145</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" scale="0" id="Tc_wZMpN_GmVEOHDoHIv6Sv_Q_13_6">15,223,955</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="Tc_aZW-vMWdkUKHVDsnwaKdmg_1_2"></a><a id="Tc_fNwFiPCDEEWkH_hnatWZrw_1_5"></a><a id="Tc_uBac5QXFgEeA2Ge2RX1Y9w_2_0"></a><a id="Tc_yjs8rvObykOLGz_lZ8kOmA_2_2"></a><a id="Tc_bAUROAC-LES47mEt81sOVw_2_5"></a><a id="Tc_nsFxQkN2b0iE91iXe0qmbQ_3_0"></a><a id="Tc_rlbItQcGDUyL_LIYkJT8fQ_4_0"></a><a id="Tc_wy4dHB7Ff0mBRcfdEE-BiQ_5_0"></a><a id="Tc_1_-lWMnMOkadLuHAWtMuiw_6_2"></a><a id="Tc_1Yp2TH-lYkOONQN3cHsSOA_6_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:DividendsTextBlock" id="Tb_w5zgH3XkNUKit_P80xswoQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">13. Dividends</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Interim dividends declared on Class&#160;A common stock and redeemable preferred stock for each quarter of the respective&#160;years ended December&#160;31, 2021 and 2020 were as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:DividendsDeclaredTableTextBlock" id="Tb_13iNQpf76EalxNxvYT1OFg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_3_31_2021_6GR5dwxrG0mn1S8Q07JC_A" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_uPumhhZfJEiMKwi07BbilQ_2_3">0.085</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_3_31_2020_ysyumH7iX02apdWgbu732g" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_UtgBLYRaY0q6MKG77AUo6Q_2_6">0.085</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Second Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_4_1_2021_To_6_30_2021__Gabo7f7HE-d5MnY7otC0Q" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_HH3SckGOVkKm5Avh97wzvA_3_3">0.085</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_4_1_2020_To_6_30_2020_O-Nf9Aq6YUSFYO-nIC9DjQ" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_R4Nl5WZVWU61m5KfvZO4Ow_3_6">0.085</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_7_1_2021_To_9_30_2021_9jAZh4BOB0mcpaqQ_ZXlKw" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_JLUkbexv-EmUD14SEzCQ8w_4_3">0.085</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_7_1_2020_To_9_30_2020_R0W93yqJ5U-N4DNtaM_56A" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_oC-PAuRvKk-8cS1UFeNteQ_4_6">0.085</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fourth Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_HrvAZIejc0qlzKA8pxc09Q_5_3">0.085</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_10_1_2020_To_12_31_2020_yaHay4RHZ0q1Fp4qvuDHAg" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_M9sbQ8MTMkKsS3yoUZUogg_5_6">0.085</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_cpwQ8l5nJ0e3DaADBiHZQg_6_3">0.34</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="3" format="ixt:numdotdecimal" name="cwco:DividendsPerShareDeclared" scale="0" id="Tc_8rf1DcS9qUGkZdanjXcexg_6_6">0.34</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:SegmentReportingDisclosureTextBlock" id="Tb_OIBCeuwPDkqc4fuePwQv_g" continuedAt="Tb_OIBCeuwPDkqc4fuePwQv_g_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">14. Segment information</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has <ix:nonFraction unitRef="Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:NumberOfReportableSegments" scale="0" id="Narr_PE08Wig6oE29TfxlQ8a12A">four</ix:nonFraction> reportable segments: retail, bulk, services and manufacturing. The retail segment operates the water utility for the Seven Mile Beach and West Bay areas of Grand Cayman Island pursuant to an exclusive license granted by the Cayman Islands government. The bulk segment supplies potable water to government utilities in Grand Cayman and The Bahamas under long-term contracts. The services segment designs, constructs and sells water infrastructure and provides management and operating services to third parties. The manufacturing segment manufactures and services a wide range of custom and specialized water-related products applicable to commercial, municipal and industrial water production, supply and treatment. Consistent with prior periods, the Company records all non-direct general and administrative expenses in its retail business segment and does not allocate any of these non-direct expenses to its other three business segments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The accounting policies of the segments are consistent with those described in Note&#160;2. The Company evaluates each segment&#8217;s performance based upon its income (or loss) from operations. All intercompany transactions are eliminated for segment presentation purposes.</p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">67</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_e8a8a5cb_2602_49f8_8acd_2d6778adfb1a"></a><a id="Tc_PUdne-AxekqQHdcq0rs_bg_1_2"></a><a id="Tc_a7X2xYWfTUepURpI9B3_YA_2_2"></a><a id="Tc_RSuDXPv44Emi1xLQRmRclQ_2_5"></a><a id="Tc_8DWRw4sKy0yG9Zua07GGSw_2_8"></a><a id="Tc_GAlJytmMXE6scmfajswiHA_2_11"></a><a id="Tc_vmPVIldQ7E-iQD3S0xrAXw_2_14"></a><a id="Tc_NJ57ZM4qnEC07WiQ9rW9QA_3_0"></a><a id="Tc_mv6S1PLgKEOX99Y5dYgbcg_3_2"></a><a id="Tc_tYrbF8jC5UWgxP8a0uqlfg_3_5"></a><a id="Tc_XwU91F2tfUCW37IYV0EttQ_3_8"></a><a id="Tc_HA5kN2NvhEijjuFjy7MwsQ_3_11"></a><a id="Tc_evgPEbaWEEaDh953PNXNhQ_3_14"></a><a id="Tc_1DKxQI-TC02cH8MaZbRYiQ_4_0"></a><a id="Tc_ki_AvJRhOE-prsQZ9OpOnw_5_0"></a><a id="Tc_1-DgCKe_skWKJg2KzJKg5g_6_0"></a><a id="Tc_pEenlqxz1EGqt5bprjcwQA_7_0"></a><a id="Tc_GMzbvvGZnkKJDAHtZwgOCQ_8_0"></a><a id="Tc_L_Erkc6cAUi-qlegV0xUrA_8_2"></a><a id="Tc_LNYUa3Y2tEeF_1FBptOhtw_8_5"></a><a id="Tc_L6abGqinV02LBfRbgZYY8g_8_8"></a><a id="Tc_ITenbm8fckafzcQw31K8eQ_8_11"></a><a id="Tc_0jLMN79G2EiqbgQqxLuG7A_9_0"></a><a id="Tc_yf53_I3FLkSsxNDhGqU_hw_10_0"></a><a id="Tc_F9gZP6Igx0WbNWgges1s4Q_11_0"></a><a id="Tc_oCVEUMbyU0GBbn7aqbCRng_12_0"></a><a id="Tc_jJNLDkFXvEmIRkBMBz1-Jg_13_0"></a><a id="Tc_5Z-zWngNl0Owl8sRCyfGrw_14_0"></a><a id="Tc__V6yWuj9IUKUcaXP4OtLAQ_15_0"></a><a id="Tc_XvTUi7Ju00-jCE8PnSx-xA_16_0"></a><a id="Tc_7eewhy3bikGrhGHCjuNORw_16_14"></a><ix:continuation id="Tb_OIBCeuwPDkqc4fuePwQv_g_cont1" continuedAt="Tb_OIBCeuwPDkqc4fuePwQv_g_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company&#8217;s segments are strategic business units that are managed separately because each segment sells different products and/or services, serves customers with distinctly different needs and generates different gross profit margins.</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="Tb_T6wzxfax4EuA6IZH0hwwug" continuedAt="Tb_T6wzxfax4EuA6IZH0hwwug_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_R7sG8mopYkaSJ2TvFZmbBw_3_3">22,104,953</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_OMRzQRJIz06CtL6HPAfCAw_3_6">26,800,869</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_9-TrDH5MAE2f7MZEHJIIcQ_3_9">13,884,857</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_DvuZBFPE9EuLU9lBRKztmg_3_12">4,072,823</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_1kjcerg2YEKbdkv7UaAYMA_3_15">66,863,502</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_iuW8Fvp8T065QRXjwIQHGg_4_3">11,060,937</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_gTIytl1yU0qAe5W8XhWhxg_4_6">17,759,272</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_RllzzapVnUeSeXMm5aNmvQ_4_9">10,707,243</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_oQ7anhjOTEq9cCLeK3kuGA_4_12">3,828,859</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_1NA7ReNAPEOlWMiFL6LnOA_4_15">43,356,311</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_C19iCbJ5ZkauVjCJSOMtrQ_5_3">11,044,016</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_nhcbMsUpdUmlLZsTreSiSA_5_6">9,041,597</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_Du849p-UIku-a27hwPL9bA_5_9">3,177,614</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_K_KADCgS5Ea_cuxT_Zea1A_5_12">243,964</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_ncrA1xLQLUCDO5D85mVb8A_5_15">23,507,191</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_SEWcQEek0kml7qPrtKU_-Q_6_3">12,841,259</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_tpnUCgenZEqcbWpS96qtHw_6_6">1,365,735</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_93ZrFv1pXUuBwTByNYEWIg_6_9">2,762,735</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_oYvNfhJ2WUSfQKZRoNmavA_6_12">1,380,630</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_eOhQLU02B0eI7LpLMiIL2A_6_15">18,350,359</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain (loss) on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" sign="-" scale="0" id="Tc_oU5xV_VH90qxP6uJXvQF5A_7_3">246,851</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_p33QqRSrtkm0B5O_KrRM7A_7_6">1,500</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" sign="-" scale="0" id="Tc_fgUUBaotJE242NaKNK-m9Q_7_9">485</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" sign="-" scale="0" id="Tc_4fk47PNUZUyAd0j0W5mzgA_7_12">2,900,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" sign="-" scale="0" id="Tc_4ZaJNconzE2KGMIKuVDRnA_7_15">3,145,836</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" sign="-" scale="0" id="Tc_j9DtoJdFrEuw5V_wcHSCPQ_8_3">2,044,094</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_6WpATnC6mkGcWDstkZCROQ_8_6">7,677,362</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_qxlgWA9NIEWUOUHiGzKB9A_8_9">414,394</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" sign="-" scale="0" id="Tc_zpUDH7cqykeaTMUYE7LL-A_8_12">4,036,666</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_nmrqM9aTIUWkQ_U16xHpzQ_8_15">2,010,996</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" id="Tc_ws7uzUWUkkSpNlBxOP5ebA_9_15">1,623,595</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_b-cQUvXtKkK9aSHKcgKheA_10_15">3,634,591</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Benefit from income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" sign="-" scale="0" id="Tc_dMwKBmz3SUO_nrWuDuITsw_11_15">447,982</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_m-M4BmFl-k-VMkj-EZK8vQ_12_15">4,082,573</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" scale="0" id="Tc_shjo3zXUA02cjLBi6so5Dg_13_15">632,915</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_BmV-0-eBl0SeZkzOxqlqIw_14_15">3,449,658</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_5RsaA2Lh60aKuNNp8dRFag_15_15">2,574,079</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_PDKoBnlKGkChrsITwZdNrw_16_15">875,579</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">68</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_cbad922c_d3f7_4c2a_8416_6a16f1fc774d"></a><a id="Tc_bI-fv5WknUqyYQYVlrR5TA_1_2"></a><a id="Tc_KkhTjgAvZEi8JahpStFPcA_2_2"></a><a id="Tc_l0i-RLhLy0CE8JtHIi-QFA_2_5"></a><a id="Tc_yAsPjaa4JEqUT7h7JfhwTw_2_8"></a><a id="Tc_4i_DtTaUwEKjl7WEYtP4Zw_2_11"></a><a id="Tc_WCLU5Yb3pEi3Yw76q6YLRw_2_14"></a><a id="Tc_tSWtzQCBCUKGyFm_jHl4-Q_3_0"></a><a id="Tc_A2I9SAm6MEipocDGtgZCjA_3_2"></a><a id="Tc_hoi0fwzR7EaMb6Giaua8lQ_3_5"></a><a id="Tc_qS_lvNDGvUW7euLfE5wfeA_3_8"></a><a id="Tc_yLvmgi6sF0GYoctHBQNxNQ_3_11"></a><a id="Tc_PlNECdFMy02GZ8AfwfYijA_3_14"></a><a id="Tc_MCK1m96bw0mjgmtEeshCfQ_4_0"></a><a id="Tc_t9rz30i5K0WiWTRr4Z4GgA_4_2"></a><a id="Tc_Cl3prXIudUWH8DdoM5dPdA_4_5"></a><a id="Tc_wHKHJ3md-ECCoEfuTy9juA_4_8"></a><a id="Tc_-7zrAMSrtk2rT3qzoAge1Q_4_9"></a><a id="Tc_AifP9ZSO5kWW4SaowWX9Cw_4_11"></a><a id="Tc_6Lzzj1ZDDke3_C2rblsBFw_4_14"></a><a id="Tc_UwoQ2psCUEOgYCk4E4n57Q_5_0"></a><a id="Tc_sHj5uTp2NE6zN7UmMMjBeQ_5_2"></a><a id="Tc_Hu6QL5ygakSIWPDQ7X7E7w_5_5"></a><a id="Tc_OF_Nhv--jkqkIwgBoK7nvg_5_8"></a><a id="Tc_2frHPa5tZEayzCez0_dIkQ_5_11"></a><a id="Tc_Te3auhf-gE6FNaUJLYuo_A_5_14"></a><a id="Tc_UWCbxo1ubEifUV4H-TADnw_6_0"></a><a id="Tc_zrYdkoG6RkOAdzyue6frkg_6_2"></a><a id="Tc_bnf4E0RHgE6LVTj4QFijkA_6_5"></a><a id="Tc_xhvaswGsik6oO8WDh1nvUg_6_8"></a><a id="Tc_Jdqqussfd02fKEq6HUcy9Q_6_9"></a><a id="Tc_P_k8mH0UskuoYNVbLAuWTQ_6_11"></a><a id="Tc_HQqR--5mYkeOttkcGVPvSA_6_14"></a><a id="Tc_hYSwQD7FAUiijEGF2x111w_7_0"></a><a id="Tc_5ywhZI3DEEG5N8oG4JarfA_7_2"></a><a id="Tc_B3W-n-JPck-VSwGT8zmN3A_7_3"></a><a id="Tc_uAQAKyyrQU2obJB5ci452g_7_5"></a><a id="Tc_3aD9kKQ41U-szDCiDUJm7A_7_6"></a><a id="Tc_SwIDudXxo02mYwwspLGo-A_7_8"></a><a id="Tc_AW6nQLwZxkWT8s7N0jKMFw_7_11"></a><a id="Tc_INftswLQT0qMkZquM0PNkA_7_14"></a><a id="Tc_yJzaBPSe9UeVI4SvrWnGiQ_8_0"></a><a id="Tc_jv4hpv-8pU-p2xZbDPkwRg_8_2"></a><a id="Tc_5gMVicrD-ECi8NyOsMgZAQ_8_5"></a><a id="Tc_HQ4pbjrRqUC6-bFjb-D0lA_8_8"></a><a id="Tc_12ovl0NE3EKUt8O4a9t4uw_8_11"></a><a id="Tc_QHABl7dgh0WCQpMbd7PMcw_8_14"></a><a id="Tc_nFzc0C-kI0287EtAtr0Lng_9_0"></a><a id="Tc_-Edl-wDgWU2JdS0dBFsYKA_9_2"></a><a id="Tc_ZO4JhnkmDEm70NofApQnpw_9_5"></a><a id="Tc_Jxq-CBqELEihLrVHT4dQxg_9_8"></a><a id="Tc_bDIUXMQ4L0SNloQXjKZvTA_9_11"></a><a id="Tc_0mJso7IoqUmEfn2Q9KULSg_9_14"></a><a id="Tc_gKRm4vBCt02P1HhExV94ew_10_0"></a><a id="Tc_rIE9EHmbkkyT8B9llSZmyQ_10_14"></a><a id="Tc_OayR9kvPT0iWNGlExIpYaA_11_0"></a><a id="Tc_x9SvncqhNUqQOs-_0kE4wA_11_14"></a><a id="_c5990f7d_cf32_44ed_9384_c9aa2f8a3069"></a><a id="Tc_aiakvB5n1EyKdjG5SAAChg_1_2"></a><a id="Tc_xYtB6MkNKkqjDl9upbFGYg_2_2"></a><a id="Tc_RPODR289pEygTgMUKxyivQ_2_5"></a><a id="Tc_iPoLLOvABkiI4SA1j5hMUw_2_8"></a><a id="Tc_s0XnY003zUuQRucJONnuGQ_2_11"></a><a id="Tc_cMsEqo_wVkSFXrTfJlZ2Jw_2_14"></a><a id="Tc_Jay4UT4ycUeP_iC9gbdaNQ_3_0"></a><a id="Tc_xdhHwC98eESCAC5V3i0pVQ_3_2"></a><a id="Tc_NFm95vq-DkyrIqOQF7yieg_3_5"></a><a id="Tc_Q3XgIkgpFUuQjDTKfO4PHA_3_8"></a><a id="Tc_QP5XIIZK-E29UdEZ87i0lA_3_11"></a><a id="Tc_9iE0ewhmpU2L3kzXzUmJDA_3_14"></a><a id="Tc_hMxwJAJD0US2oVxFsfUYww_4_0"></a><a id="Tc_wt0q4PfyjEmPECi_9DwYLA_5_0"></a><a id="Tc_Iy62WT_U4kGUZFUZJM4dXA_6_0"></a><a id="Tc_M3mw2mSRGk2gmIbef5KDaA_7_0"></a><a id="Tc_wKO1BE6DFEao_ADHqs3vsg_8_0"></a><a id="Tc_N_ZmKtS6I0qQ3HJON5zzXA_8_2"></a><a id="Tc_DbhTrP2zo0Kt16QZ4LJbaw_8_5"></a><a id="Tc_sXaZRtkvoEa281Hux5UbVQ_8_8"></a><a id="Tc_J_FHnvCJqkWDi9r9NYHmNQ_8_11"></a><a id="Tc_cf6pAQp65EmIvCAvG1jxWQ_9_0"></a><a id="Tc_STS-PwdJ2E6oDgqC_oOXVw_10_0"></a><a id="Tc_Gkhfy8aqHkGTT_vSEhCR3Q_11_0"></a><a id="Tc_UABPsQNmr0-Lhe5-lRKMNA_12_0"></a><a id="Tc_Vy24nOevUkK3HSKZsPQnyQ_13_0"></a><a id="Tc_QIZAIfZ6z0qT2eVbHw9Cag_14_0"></a><a id="Tc_9FhUFWTgJEevGaAqkMAXKQ_15_0"></a><a id="Tc_YdhFn8FGNEOpRcELGW-lYA_16_0"></a><a id="Tc_HIYXfmRHakirqL1x975BeA_16_14"></a><ix:continuation id="Tb_OIBCeuwPDkqc4fuePwQv_g_cont2" continuedAt="Tb_OIBCeuwPDkqc4fuePwQv_g_cont3"><ix:continuation id="Tb_T6wzxfax4EuA6IZH0hwwug_cont1" continuedAt="Tb_T6wzxfax4EuA6IZH0hwwug_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2021 for the retail, bulk, services and manufacturing segments were $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_FgTmcfDg506p5HA4m3tYvw">2,517,407</ix:nonFraction>, $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_6pL7O07byUGlJv6OiC3rQQ">3,331,554</ix:nonFraction>, $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_SnaYr4OjmUKIJeHqj6dbFA">782,882</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_NEFqaomBFUysB5-dchXBGA">289,390</ix:nonFraction>, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_qnA7GoNJrU2t9GthmnSCyw_3_3">2,601,619</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_S61L6tKf-kaYP5WM2cvKXg_3_6">21,682,951</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_O9gMBGeUxU6RLwGVDd5gKA_3_9">1,698,797</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_dTxMBwVHt0SMBdtNc3aJvA_3_12">1,365,940</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_UIq403GsBUmGLASqhlBKww_3_15">27,349,307</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_veUIyVhGM0eNOEr_Ja9DzQ_4_3">2,787,277</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_o7EKxAZCV06uqCFQ9eYnAw_4_6">3,860,808</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_EOAOLYTO4kCHa4HnEEz0fQ_4_12">589,757</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_10tqOJx3ekqpWLOaI0qaEA_4_15">7,237,842</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_uPP6PAcXfECUqGeJcRTVqg_5_3">26,357,390</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_j02nXPdeYECfPZj2gdPqqg_5_6">24,476,936</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_9-9Onq83YUKiILnJoT9CgQ_5_9">512,493</ix:nonFraction> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_1oCxSzkIw0Oz7qU_htfL0g_5_12">1,599,720</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_MjxtA5km2kCBzAaIgjFGaQ_5_15">52,946,539</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_9bf--fK_kECftsNBr4q7mQ_6_3">617,334</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_fbI_npJktkG9Pp0aFwyYcg_6_6">31,737</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_JjuQKzmv50uvlZUAaNFKlg_6_12">61,792</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_M8yxbMjyb0SiJl-mEC5gwg_6_15">710,863</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_ImiTmmDknU2OdRKHX7n1kQ_7_9">2,553,888</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_KycETjtgkkGjsUyhLo5rSg_7_12">847,778</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_WTMqZa4dKkujVjvxGjQVgw_7_15">3,401,666</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_6vHr73T1WEOVCZ0wAx6npw_8_3">1,170,511</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_TjCMlN6DsUS5ElAThuTMtg_8_6">1,948,875</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_r4b_7SH5WU-B5t6EBCoHIg_8_9">5,320,416</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_d4UPsEUjCk2iZzo4ellKjg_8_12">1,985,211</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_KMG8jAX_1EaPDnAoMPrsIQ_8_15">10,425,013</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_MP6AuqNKyEO_wBfbap3EBw_9_3">61,736,441</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_kM4WTC7ljUSVcjO-Z06w0A_9_6">68,723,405</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_O-FPzrJJn0CrMUOp14VH8w_9_9">16,049,001</ix:nonFraction> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_N9m8bgZ45EeImJ8Q9ls4Qw_9_12">8,198,280</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_AmJAJUV6uUGFK62J2ItC9g_9_15">154,707,127</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_tndJD7TdTUW0iAXYupxGAg_10_15">22,319,927</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="0" id="Tc_r-7VJZ7BEkugIJQBrwxeqg_11_15">177,027,054</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_pHJWycxEoEOSlaR6H7X-Tg_3_3">22,952,370</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_cOkIoF1DF023djLuUXvbNw_3_6">24,312,546</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_ZeUcjRYLu06IhuaRTrlsZQ_3_9">12,937,859</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_a2GCOk-aVkSPQK1H3QxbYg_3_12">12,425,351</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_kVV9JFTGv0iweVprdkZJTw_3_15">72,628,126</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_ExFgh1o7wEKDmT70ILfzZw_4_3">11,080,814</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_O-hoga2KiEy5aV8SZJrqCA_4_6">16,959,563</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_81cQZLXGrUSBdvMOoGstxg_4_9">9,698,214</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_TM557paTqEq-88zEoMoZTg_4_12">8,121,080</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_ZYGgFnJ510eW1Uc10pynLw_4_15">45,859,671</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_YzlpSY33hU6nFydWbiZN5w_5_3">11,871,556</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_RigeA0jsrkiDS1Uu8vemdg_5_6">7,352,983</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_f7l7GcjrY065gChqsdGroA_5_9">3,239,645</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_TSbYJl0660aongzlB11q7A_5_12">4,304,271</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="0" id="Tc_zUEJcKOJ90GNzkuRHqL7LA_5_15">26,768,455</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_GtPrwkn3QkGLzfzxZ_9MrQ_6_3">12,879,445</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc__AyrwY2l0kGXmRp9kX1Lbg_6_6">1,260,062</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_tTtTj4H4B0OH4CSnZEgkJA_6_9">2,834,917</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_cPw3uT83bkqii5_mLzMnnA_6_12">1,460,474</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_BoxSl0NpaU-78t-IgmHr5g_6_15">18,434,898</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_8VWUWTmXoUiVXUr1UAl2aw_7_3">2,965</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_TBSk_w5o202bg7cgKQPJag_7_6">7,213</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_XP_vHw1hJ0iw56O14xcr8Q_7_9">3,801</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_ydDzOcaj0EmISxRJfCZMoA_7_12">18</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges" scale="0" id="Tc_pSG0oBTSMkqRIG8ncH7XEA_7_15">13,997</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" sign="-" scale="0" id="Tc_DsuHiWVCnE2E1xvsuBIYZg_8_3">1,004,924</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_7kku0IGlz0OUZTdQgdI-2g_8_6">6,100,134</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_PeaveI5URUm_X4siV9ccEQ_8_9">408,529</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_oD5l2i3MGUuKhhyPF9oTgA_8_12">2,843,815</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="0" id="Tc_udwhAKSQ5keOXryS18AZdw_8_15">8,347,554</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NonoperatingIncomeExpense" scale="0" id="Tc_R14Y8o93s0KL__d0ouRGtQ_9_15">1,082,946</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" id="Tc_zBJQMu7Co0atj15yvQAwFQ_10_15">9,430,500</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" id="Tc_6iOlltMKnUWjh7Z1WJ5Rqw_11_15">86,724</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" scale="0" id="Tc_sNt-1TgxyEWJVibsIHO0dQ_12_15">9,343,776</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" scale="0" id="Tc_BAUGf-D8ekiOT3jYcLA1Lw_13_15">730,005</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="0" id="Tc_EqxZsExY00C-2dBydTA3Ag_14_15">8,613,771</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax" sign="-" scale="0" id="Tc_OZyXQorjJUuLCcZDk_VxOg_15_15">4,902,243</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="0" id="Tc_j2JDoRm75EGqEzpklf97xA_16_15">3,711,528</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">69</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_f2d27112_4e16_48bc_95bb_cee0a5ee49f9"></a><a id="Tc_8pv5vn32Ok6lwEvsXijCQg_1_2"></a><a id="Tc_HXHNVDhIp0GXPDl14J85Iw_2_2"></a><a id="Tc_PJU1xR4xd0aL1Lx5CeFRbQ_2_5"></a><a id="Tc_6dgI3HVScEmfo5QbZ2OZXw_2_8"></a><a id="Tc_b8uMrW7tA0evNOkeqe-sKA_2_11"></a><a id="Tc_-TS4o-umLkuhr0SowK1_QQ_2_14"></a><a id="Tc_oi1iN_C8wkyJeU9JWbEfsg_3_0"></a><a id="Tc_WyFiS8f12EyJZ-Qr9YwZgw_3_2"></a><a id="Tc_SJmJ8_3edUuo6ubYQqRJJQ_3_5"></a><a id="Tc_AFZtWy969kiGg8Tbr5X39Q_3_8"></a><a id="Tc_Kg4gMplwCEm7Rmbk2PWZGQ_3_11"></a><a id="Tc_D2Rs-Yy2Q06m2iuBHzX5ew_3_14"></a><a id="Tc_l4_lXdq0vEiCGVM9owyFdw_4_0"></a><a id="Tc_eQAy7gw1_0yFL2CvsfgxHQ_4_2"></a><a id="Tc_Cf4Vg48pE0eyu0kKVIKOAw_4_5"></a><a id="Tc_jn7bpyLctU6wVn7QklAsEg_4_8"></a><a id="Tc_mm1lJ7g_dEOwovtyqv0PaA_4_9"></a><a id="Tc_SbiGR-NuWU-nAK6ckWbv3g_4_11"></a><a id="Tc_73mT9VC7n0WChZwE1zN8Dw_4_14"></a><a id="Tc_3oqy5Azj0USAAdLD2yt0TA_5_0"></a><a id="Tc_G-QY9jmCU0WPcZDbHdYh2A_5_2"></a><a id="Tc_meoqbqCUiEW9Wauaj2-10A_5_5"></a><a id="Tc_Qmw9VgIpTkqKjjGiENmcwg_5_8"></a><a id="Tc_b2TwOz4X_kyfqnREfFVCVA_5_11"></a><a id="Tc_-48ndRmzcEGsE0kmR7N1Yw_5_14"></a><a id="Tc_sNMWKHmYeEODDfTZLQpIlw_6_0"></a><a id="Tc_DkcqPuCu20ek2ezB4i9ejA_6_2"></a><a id="Tc_SJT80cWOOESEuPeISE6sTA_6_5"></a><a id="Tc_SpZMI8mlgkCmXQt8Ev1akA_6_8"></a><a id="Tc_L9o0lkaSLki_A2zlgT6Yag_6_9"></a><a id="Tc_ifsi0oDPv0i-NLwJai4uJA_6_11"></a><a id="Tc_lZw15mg5yUex839OXrPimw_6_14"></a><a id="Tc_nRr0nrQ3lkeN3mC2nkni8g_7_0"></a><a id="Tc_bwOiBBOqhUCLX8MPlPOVpA_7_2"></a><a id="Tc_9CVLh1Z900qB4GZ83-mQgA_7_3"></a><a id="Tc_voX-JIPs_E26an4dDt9spg_7_5"></a><a id="Tc_Y1UVqCQ2jkKv40rKPOtFhg_7_6"></a><a id="Tc_3ZeFRJ09nEGnP8kUSvrhVg_7_8"></a><a id="Tc_AVKoQckw7UK2jZHO-gxZzA_7_11"></a><a id="Tc_UW45GSCRqkSORK5CWvx81g_7_14"></a><a id="Tc_977PaVQ40UClz9DJzUsSPg_8_0"></a><a id="Tc_BHx0UALTIEOQ8pQRea9I4w_8_2"></a><a id="Tc_NlLFO-YffUy_yrAwMCH7FA_8_5"></a><a id="Tc_brb7istW6EGjj8DbalctiQ_8_8"></a><a id="Tc_5Wr6y6CCUUSqkipF9qQcUw_8_11"></a><a id="Tc_SHkUPcygBUaFYFNQDFxlTw_8_14"></a><a id="Tc_fB-CbHYA0Uaa8xYSeHG-ag_9_0"></a><a id="Tc_DgBztAC4E0qnWSyRiABI_Q_9_2"></a><a id="Tc_WHk-1TxnYU2xkhtsiOld3Q_9_5"></a><a id="Tc_qbmigOigIE66ySUGPe6l1A_9_8"></a><a id="Tc_DfA9YjL1bk2EiU1gefU8VA_9_11"></a><a id="Tc_KfOYUMSGck-s3iXNf65czw_9_14"></a><a id="Tc_gTKd3JboM0eyZSdzdwt9NA_10_0"></a><a id="Tc_vvaT-xAxN0OuFGnntQE-Sw_10_14"></a><a id="Tc_RXRVL2porEiT42hTGcxXzA_11_0"></a><a id="Tc_9Sau6R--dECOepdDHHObxQ_11_14"></a><a id="_f16c58b8_b3d5_4c1a_9880_ee08328f1cc6"></a><a id="Tc_ALOiRhbAaUyEN9nRDQq14Q_1_2"></a><a id="Tc_b-x_Orl3JUSkn1VV3IOnMw_2_2"></a><a id="Tc_s9Aej5jSQ0mE5F4qWs0Mdw_2_5"></a><a id="Tc_96Whzt39HkuQk3L0vdTVRQ_3_0"></a><a id="Tc_ZyLRyZcibEqqm8O2_Fvf_A_3_2"></a><a id="Tc_klAF2QSgFU2yL38Hx1H1WQ_3_5"></a><a id="Tc_qZTKzEgUL0qFgFg_CNymDQ_4_0"></a><a id="Tc_yw5ZjGLyxEKgo0lWuA3Qnw_5_0"></a><a id="Tc_i6b8jjj-Rk2u__4HdnvuKQ_6_0"></a><a id="Tc_EZQJK-VcK0Wzl3o824vlUg_7_2"></a><a id="Tc_FdfWSZ4O90CQAfP8jf12Mw_7_5"></a><a id="_e626adc0_a8d8_431a_8995_bc493a9033dc"></a><a id="Tc_jwC-6wnLGUqTVKeWt0pbWw_1_2"></a><a id="Tc_c-_Tdg8-hUGggv2DhHgJLg_2_2"></a><a id="Tc_zvDwagzEgUS3OZRUF5-V3g_2_5"></a><a id="Tc_kkWWBLYs4ki2p-MKWNd2eQ_3_0"></a><a id="Tc_AIq1vGf8wUSmwaALniaptQ_3_2"></a><a id="Tc_l7Q4YZlltkmiFhVbwSSu2g_3_5"></a><a id="Tc_I-8lpWTVU0eHQA-R7zG9Yg_4_0"></a><a id="Tc_td0V5klvBEy2-9zGTvFxSw_5_0"></a><a id="Tc_Zdrbm0Y36EeBJ8nUaqtcaQ_5_2"></a><a id="Tc_cCpOUvSH2kS14SpLkGy6dQ_5_5"></a><a id="Tc_W5fm22rzqUi-gCg_W--4Lw_6_0"></a><a id="Tc_siWDxeCb6kuY0xGFHeNm-Q_1_2"></a><a id="Tc_CJ6_-zvrHECDB4e-h-Gabg_2_2"></a><a id="Tc_Z2brJxa1902JU9OhA9jKag_2_5"></a><a id="Tc_FzngwjV9wUeAxkZ_A4jgpw_3_0"></a><a id="Tc_FTtW45CvUE2BBtk2GSjIYw_3_2"></a><a id="Tc_f-sS6AudwUW3s4YFD3BZtQ_3_5"></a><a id="Tc_3vLX_kri60S8DB_sJQY5MA_4_0"></a><a id="Tc_-6T4i4BLOkelqqeGq2Oc8Q_5_0"></a><a id="Tc_i2CeWUWsokiB1oUdF7nB-A_6_2"></a><a id="Tc_K3FNSmFP6kG7O3eoBe-fLQ_6_5"></a><ix:continuation id="Tb_OIBCeuwPDkqc4fuePwQv_g_cont3"><ix:continuation id="Tb_T6wzxfax4EuA6IZH0hwwug_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2020 for the retail, bulk, services and manufacturing segments were $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_vVhoUkrzUkOldfhxtlVUYg">2,388,781</ix:nonFraction>, $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_Caqjn0S1mEmCwDd6ZBKb8g">3,869,377</ix:nonFraction>, $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_c9K7LZojskqgmUplwoMiCg">762,182</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" id="Narr_QXgnFGTkbkmbu8zdijpgew">386,169</ix:nonFraction>, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:68.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_WDJbKNFn9EywDGx003ERSQ_3_3">2,444,455</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_MDPSQjJeT0CKAb1mFA1u0Q_3_6">17,022,813</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_kYONammtb0GKAZVsxuqd-g_3_9">1,420,609</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_Xi2kpWqvck2CGx-HPrJ9pA_3_12">596,099</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="0" id="Tc_3bxg2vgQnkO2YM2RCEeBOA_3_15">21,483,976</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_tH5bqhWWbkiZUdZKh3WWsw_4_3">2,787,163</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_OIijUwm0eUiTg7jfmKDwKg_4_6">3,795,544</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_ATeL_3R-RkqMeC8V-G98vQ_4_12">1,138,313</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:InventoryCurrentAndNoncurrent" scale="0" id="Tc_9bK8_3Z1Y0yl0evE99z29g_4_15">7,721,020</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_6Fd4Cw2CQU-L2hqIDVLvbw_5_3">27,947,545</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_WrrR27M_5kyVQebehLgyUQ_5_6">27,611,567</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_2wuiAJMrbUKoB7YMrgEurA_5_9">487,973</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_MWJdi3gi6kCVKUcVDj9etg_5_12">1,640,899</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_RYr5jbwJpUOeJsVgT2aFBg_5_15">57,687,984</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_Enyu6Elu10uBkGwEXQMojg_6_3">305,110</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_EWey2UsY0EqCuit83e8lmw_6_6">31,737</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_UxW59v4vnkCyeYbwN4CgFg_6_12">103,537</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:ConstructionInProgress" scale="0" id="Tc_0rsNtZzNe0WXZWZwXP9w8w_6_15">440,384</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_G2PpU9w9O0W0yRZ1TdQphA_7_9">3,200,555</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_BeI6Ivws3ECfAy28yo_ZLw_7_12">947,778</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" id="Tc_wulmnFbsfkqkrBpGNvcVJA_7_15">4,148,333</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_mvf6aBfXz0KczjUQ2HvbYg_8_3">1,170,511</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_GnPsSmnFSEeNyWs19TbHLw_8_6">1,948,875</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_RPr48GbbvkiY4dIarnu7mw_8_9">5,320,416</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_1GTfW-65SkG_Wz3_L-4ZQA_8_12">4,885,211</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Goodwill" scale="0" id="Tc_lA6HDZyPB0ugsj61Wp2WHA_8_15">13,325,013</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_mFY5hpoJ3ECLKqymd2zyQA_9_3">56,425,159</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_qEtq5G1VjU-lpyjp_R0kvw_9_6">74,771,798</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_0HGxurH520iwfREPyrKwpg_9_9">14,470,322</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc_FD-s8IhUEkWgRx-PL1Wyew_9_12">11,210,685</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="cwco:AssetsContinuedOperation" scale="0" id="Tc__UhuyJT1O0y7r3Rxeb65dg_9_15">156,877,964</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation" scale="0" id="Tc_JaUbc42dckO_EY64Cr9rtQ_10_15">22,677,588</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="0" id="Tc_AWWOV7ydIU-hJAEKyvMLVA_11_15">179,555,552</ix:nonFraction></p></td></tr></table></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenues earned by major geographic region were:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" id="Tb_FsEtHRVYvESslvscy3xbjQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_KY_r_55bqiwcUO3N5_w6UPbXA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_sGYFM4zG7ESKfjSUqf0MPw_3_3">24,935,746</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_KY__AeU1tTbRU-QVqy9aWCieA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_4xg7VCaqCUaE8fLDIPQUGg_3_6">25,640,169</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_BS_QXJQmBZH70mreEnT1WYT6A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_XTqOwi0KJka7Zf5BhmxiKg_4_3">24,031,547</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_BS_9Fb5DN0wpkSlngUBr-8NMg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_thzCpZJruEq2Ke2CYD0Olw_4_6">21,654,153</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_US_RSDYhylA5EaUs8pvVMkuhQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_zRTvBJcR00eORWQF_t-7wA_5_3">17,489,851</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_US_7aRtVe6AbEi0OEu3t7kNBg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_DeE6td46-Emx9a5ysf0HNg_5_6">24,918,527</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenues earned from management services agreement with OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_VG_f1PvOgup9EuImo57Pqu29Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_66T-7EQ-AkioUGg9lBxlHA_6_3">406,358</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_VG_p9lQjE2KGkWokzSh2X3lEA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_5wJljrgGbkefh5LUktRKXA_6_6">415,277</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_yRn6LoIEzU6zRsx9HhyIag_7_3">66,863,502</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_-Kzaflf9GkW6gpv4d2xieA_7_6">72,628,126</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenues earned from major customers were:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from the Water and Sewerage Corporation (&quot;WSC&quot;)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_BfJypifmAkak5RhGovFhsQ_3_3">24,031,547</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_-68O9vncCkigw4Z3Vho41w_3_6">21,527,487</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the WSC</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ" decimals="2" format="ixt:numdotdecimal" name="cwco:EntityWideRevenuesMajorCustomerPercentage" scale="-2" id="Tc_jOJcmw6P4UaE8K2ZRu9WjQ_4_3">36</ix:nonFraction>%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA" decimals="2" format="ixt:numdotdecimal" name="cwco:EntityWideRevenuesMajorCustomerPercentage" scale="-2" id="Tc_FtR8z8YYyEy-DmgtQcP5lw_4_6">30</ix:nonFraction>%</p></td></tr><tr><td style="vertical-align:middle;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_iZTSfyuFfEi-smQVFO1EmA_5_3">406,073</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="0" id="Tc_gsAaoT5pIUuqmLoV5vE2gg_5_6">9,965,041</ix:nonFraction></p></td></tr><tr><td style="vertical-align:middle;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw" decimals="2" format="ixt:numdotdecimal" name="cwco:EntityWideRevenuesMajorCustomerPercentage" scale="-2" id="Tc_dpqpszxadUCbhKH1dBIuSA_6_3">1</ix:nonFraction>%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw" decimals="2" format="ixt:numdotdecimal" name="cwco:EntityWideRevenuesMajorCustomerPercentage" scale="-2" id="Tc_iLTx1FXLvUig2-DtxMbxxg_6_6">14</ix:nonFraction>%</p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Property, plant and equipment, net by major geographic region were:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock" id="Tb_Muinyoyuak60yiTTiDAhWg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_KY_F0359zoYFkaYzxPK-dCbIg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_Y6pwiu6jNEOj4u8uNMbmnw_3_3">26,687,944</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_KY_tyOKrtxwtEWR608WKbWa3w" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_ADm9QB_Y9kioHlRcsN2gJg_3_6">28,474,748</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">The Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_BS_WSXr0WodAEeIoLOZSTfzRQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_RDplTB1ysECVBYV0Di0kQw_4_3">24,004,707</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_BS_Df9FN9wj6EOR92k835m07Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_yqi17U5dFUi3Iw7jOjVIsg_4_6">26,975,427</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_US_s1p_n0GAck66NMeZmI3WSw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_2Wrzz_lC9UelxEmRHOXvHA_5_3">2,253,888</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_US_8fspIUrFq0iXznqIAr9gnw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_XMPTK18B-kGiLhORyqD4PA_5_6">2,237,809</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_dqvZHpXQoE6p_t_iKy130g_6_3">52,946,539</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" id="Tc_p3OGKzovJUuUOCE1PQ4nAg_6_6">57,687,984</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">70</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_94f514a5_7f59_4dd2_9264_b338c277df1a"></a><a id="Tc_Z8P9SjrW70O-6dZtRARdXg_1_2"></a><a id="Tc_kFezwhZZs0mRgTQs12rcYg_2_2"></a><a id="Tc_vstCP_jw-UuqLugkiUUjOg_2_5"></a><a id="Tc_CBsrrQZ2B02Q8t2nynDWkw_3_0"></a><a id="Tc_BLwRW-v9Ck2hUkr5ZwfBWg_4_0"></a><a id="Tc_4TQ_uAEFS0iXlYRGP_j1zw_4_2"></a><a id="Tc_3KpRbHQClEOKSNuz9UHWGA_4_5"></a><a id="Tc_iVy8VMx780OSz2xWMHRmvw_5_0"></a><a id="Tc_bOODuHqIwUm-sr1iy3ft8Q_6_0"></a><a id="Tc_lSrXUVaVvEuFqGRcgcPF7w_7_0"></a><a id="Tc_GPdjhk6udk6u_cfvEFqBrQ_8_0"></a><a id="Tc_EFrF40B5d0-vuuc7U_py1Q_9_0"></a><a id="Tc_1kWadrk3YUiVN5AQoAc_3g_10_0"></a><a id="Tc_F63JVw1npUSUpguRGVP9Ow_11_0"></a><a id="Tc_eM2VjqTzL0mKgR8vpLNI_A_12_0"></a><a id="Tc_unEsiiI7pUGeWKPkt4rR3Q_13_2"></a><a id="Tc_7Fk7xdytKkORcazkhGNoUw_13_5"></a><a id="Tc_cg6LxzXus02jyQ7emVkl7A_15_2"></a><a id="Tc_hILD7meiX0un21SEyU4sdg_16_2"></a><a id="Tc_OrS-x-VszkiyEx8xp_b8rg_16_5"></a><a id="Tc_DpbDK4-yWE29fQZmR9dNDQ_17_0"></a><a id="Tc_xrDWqXphm02l33VaIS8TUw_18_0"></a><a id="Tc_JJRDy_C7FEi3_bx4j0_Zvg_18_2"></a><a id="Tc_4dWy2D4-ak6X2vy6T5PWsg_18_5"></a><a id="Tc_WkEan8YLDUCvYorLQAv65w_19_0"></a><a id="Tc_3louv5wvEk6QPrGl1GbtZA_20_0"></a><a id="Tc_Ql3dZri-0UaFPh4Vrxh1WQ_21_0"></a><a id="Tc_dQnWF5yPC06EIV1c2fpwcw_22_0"></a><a id="Tc_19aqGukG10e_ZfUoC096GQ_23_0"></a><a id="Tc_XjbztQ6TqESKnJvzQXlErw_24_0"></a><a id="Tc_rnMWBQkFk0y1OCN6HXwT7g_25_2"></a><a id="Tc_iUZvejL4mkSoxDvSAer1jw_25_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" id="Tb_J1ZXaDNEC0ifjRAwoDg0HA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">15. Cost of revenue and general and administrative expenses</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" id="Tb_y5PJeJAnWkiN0Kaw4yZ-Yw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost of revenue consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Electricity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_dwJApOGydku2pSUkdE4cXA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_n0n8e9YqW0WjKfitSHrSng_4_3">5,698,148</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_3WUre99xyUmAtlM3gU49yA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc__0n0sLF16ESwsStW_IjYew_4_6">5,389,361</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_Q3Fnb_t7p0u-WhA5I6FMDA_5_3">5,855,073</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_EwUtirXXJUS3V6fXMGtCQw_5_6">6,202,012</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fuel oil</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_ekiKLPPPN0Sq-xNE9FPGlw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_Zg0oFqrxhUeXtzf1Sxyp5w_6_3">5,742,056</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_zsWawSRNeEq148hA6_fMFw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_h-DcAxQ06UyikPfESXM3lg_6_6">4,157,393</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_5KBXuAtidkeXCO_egiWpFQ_7_3">12,439,042</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_-wsW59dwQ0OmfpVTQQ-n6g_7_6">11,465,514</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Maintenance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_2_4xHWNyOUiRFJL1SiphTA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_bE0RIAcoYk-ZXcjjWgTYCw_8_3">2,092,776</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_nIDwp5kSwEeLdwVBQnxtSg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_AWOmmQtTGECqkHFd2Ne1Wg_8_6">2,859,262</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail license royalties</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_3Hk3LMrdnEC7vdv7eMSHzQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_mElq6Vfra0aSeHHKg45FRw_9_3">1,418,820</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_8LyZFX58x0amUMmdq91b0A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_A5NM_YZbTECmdTmQZnx1BA_9_6">1,489,862</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_UpiyN_H0MUS-4OzRCpfmYg_10_3">1,625,862</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_g8hIGiiyPEm4_pZcrTfi3Q_10_6">1,491,799</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_U4ujjFBn80GNcRKr-wSbAA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_YOZz7ggJTkCc2eMOUdQa0Q_11_3">1,952,764</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_3fijKjtLP0i_W_LYAwWCGg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_arce10jniUirK18IxTAROw_11_6">5,786,698</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_ETZ4MiAHaEO58VZI3-61ZQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_paP0sFUgj06UuqT2b11dQQ_12_3">6,531,770</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_HftNJsdBOk67Xi6tf0YEYg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_QAnCel16yEqNzYREEGCoCA_12_6">7,017,770</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_a1hxQpz1tEaa2TQ5z2Ca2w_13_3">43,356,311</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:CostOfRevenue" scale="0" id="Tc_JMqJeaQuqkCXTOAzgJEH1w_13_6">45,859,671</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">General and administrative expenses consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_AhunOaJMg0Wn4RvGdkCqvg_18_3">9,562,125</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_qfKO0v9Wxky2uMvB77bZXw_18_6">10,086,588</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_WOAlFLHXQkGAMpJyv6O_PA_19_3">1,813,026</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc__wr_eWaho0uJ93H2tKdnxw_19_6">1,436,957</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Professional fees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_7m6rF6Uj90mfuItIrE7hCw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_XrWFTNSszkKb3jKlMMHRww_20_3">1,506,423</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_tNgqPSYlik-XMvXImeXynQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_ZK3K42QnxUC5X3UKsQMMKA_20_6">1,488,948</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Directors&#8217; fees and expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_pO4dE_fbskO9VXGI88UmsQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_ugSLWMECW02QpZapRZnKsw_21_3">851,775</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_LzAYr8PnoUiHD4Lr9hwW5A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_HR7Nj36mpUuNSbajmQYTPg_21_6">865,555</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_RuwtqBu5tEq9wPPf-xwDbg_22_3">140,140</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_jaLNsJkaeUa1wjfJP4QmAw_22_6">133,477</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Amortization of intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_Go8uayF_0kizBJckFytZnA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_NbE0dmADPE6nN_pDIe-T2g_23_3">746,667</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_kRpGDMpyNEGfm85XSOZKfQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_z9HV8X7K-UGmowV92nhSww_23_6">891,667</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_TOitYhxwg0W68pJpwEjZ0g" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_ZXSk-zx0dk-Q1r4mXAc_Bg_24_3">3,730,203</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_pzf1TtXv7ESmfsKJZiTwGw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_56gMumWVA0i8kjAVIOFypw_24_6">3,531,706</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_VC5i0VlHakWYH5oL1ujT4Q_25_3">18,350,359</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:GeneralAndAdministrativeExpense" scale="0" id="Tc_uu_GIF8dAUyYZMhaq5Whgw_25_6">18,434,898</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="Tb_FTvEQKQO4E-QUzl4TbTynQ" continuedAt="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">16. Stock-based compensation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has the following stock compensation plans that form part of its employees&#8217; and Directors&#8217; remuneration:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Employee Share Incentive Plan (Preferred Stock)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Employees (i.e. other than Directors and Officers), after <span style="-sec-ix-hidden:Hidden_YdM7dYC86EaCKfEKZM-B2w;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">four</span></span> consecutive years of employment, become eligible to receive shares of the Company&#8217;s preferred stock for <span style="-sec-ix-hidden:Hidden_QN5hwaabf0iOIJGHKM6vcw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$nil</span></span> consideration under its Employee Share Incentive Plan. Once an individual becomes eligible, these shares of preferred stock are awarded each subsequent year of the individual&#39;s employment (the grant date) for as long as the individual remains employed with the Company. If these employees remain with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company&#8217;s common stock on a <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" decimals="INF" format="ixt-sec:numwordsen" name="cwco:StockholdersEquityNoteConversionRatioPreferredShares" scale="0" id="Narr_1p4NeEgV5keQfBKLBRBzjA">one</ix:nonFraction> for <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" decimals="INF" format="ixt-sec:numwordsen" name="cwco:StockholdersEquityNoteConversionRatioCommonShares" scale="0" id="Narr_XzYxjj-LlEeiEjUeJNt8aQ">one</ix:nonFraction> basis. In addition, at the time the preferred stock is granted, the employees receive options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company&#8217;s common stock for the first <span style="-sec-ix-hidden:Hidden_Tlfe_TGKFk6q2QbewkdKDw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">seven&#160;days</span></span> of the October&#160;immediately preceding the date of the preferred stock grant. If these options are exercised, the shares of preferred stock obtained may also be converted to shares of common stock if the employee remains with the Company through the fourth anniversary of a grant (or option exercise) date. Each employee&#8217;s option to purchase shares of preferred stock must be exercised within <span style="-sec-ix-hidden:Hidden_wsvl4L0MzkWVVe1YTEyRYg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">30&#160;days</span></span> of the grant date, which is the 90th day after the date of the independent registered public accountants&#8217; audit opinion on the Company&#8217;s consolidated financial statements. Shares of preferred stock not subsequently converted to shares of common stock are redeemable only at the discretion of the Company. Shares of preferred stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesIssuedForServices" scale="0" id="Narr_AUitcrBssUmRLr8pPQiPNg">8,632</ix:nonFraction> and <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_SqK6sNa4l0aOaqplT-GdUg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesIssuedForServices" scale="0" id="Narr_3YqU7ikKN0KS59-6VJgaqw">6,123</ix:nonFraction>, respectively, and an equal number of preferred stock options was granted in each of these&#160;years.</p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">71</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="Narr_ZaUdbNcueUyxwbIkoA1Jmg"></a><a id="Tc_jyGf7JOxTUiUN_L01O2bfg_1_2"></a><a id="Tc_2_B1YVGiSUKdNAKxhqxNHQ_1_4"></a><a id="Tc_a8ZJ_gD-hEaqjZtXY68fEA_2_0"></a><a id="Tc_kGi4ql8YM0yeM5Tc4806rw_2_3"></a><a id="Tc_ap2jMn7sBE2V3vs6T_qSyg_2_5"></a><a id="Tc_uEfkK2yCp06ZChUIr6krFg_3_0"></a><a id="Tc_Ot9qsEZuzkuHddWWClyExg_4_0"></a><a id="Tc_0MgNhMegVkWkgNh3ewfjSw_4_3"></a><a id="Tc_8iQgKHT890SHuH_kpgU7WA_4_5"></a><a id="Tc_NBR5JuCGm069IRWdJZKH-Q_5_0"></a><a id="Tc_Q4u1KQ48SkKJNfuEokb64g_5_3"></a><a id="Tc_5SYyP8GUtEiRcZGvDWyfOg_5_5"></a><ix:continuation id="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont1" continuedAt="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Employee Share Option Plan (Common Stock Options)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has an employee stock option plan for certain long-serving employees of the Company. Under the plan, these employees are granted in each calendar&#160;year, as long as the employee is a participant in the Employee Share Incentive Plan, options to purchase common shares. The price at which the option may be exercised is the closing market price on the grant date, which is the 40th day after the date of the Company&#8217;s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i)&#160;the number of shares of preferred stock that employee receives for $nil consideration and (ii)&#160;the number of preferred stock options that employee exercises in that given&#160;year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the thirtieth day after the fourth anniversary of the grant date. Options granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_uh0sxFbAEUq10pMjfSjzjA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_EhezZzuzqkuXnlULsSYNrw">3,400</ix:nonFraction> and <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_TddUvJ6Na02QRBQfN9PQfg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_Ia_BEvAvPEqh4m4pzB2DrQ">2,100</ix:nonFraction>, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The fair value of each option award is estimated on the date of grant using a Black-Scholes option-pricing model that uses the assumptions noted in the table below. Expected volatilities are based on historical volatilities of the Company&#8217;s common stock. The Company uses historical data to estimate option exercise and post-vesting termination behavior. The expected term of options granted is based on historical data and represents the period of time that options granted are expected to be outstanding. The Company uses historical data to estimate stock option exercises and forfeitures within its valuation model. The risk-free interest rate for the expected term of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">2008 Equity Incentive Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On May&#160;14, 2008, the Company&#8217;s stockholders approved the 2008 Equity Incentive Plan (the &#8220;2008 Plan&#8221;) and reserved <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_5_14_2008_us-gaap_OptionIndexedToIssuersEquityTypeAxis_cwco_EquityIncentivePlan2008Member_3Q0krjmaL0mpFVyAg2ZBgg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" scale="0" id="Narr_4PY53eduFE-V5tTx9ccSwg">1,500,000</ix:nonFraction> shares of the Company&#8217;s Class&#160;A common shares for issuance under this plan. All Directors, executives and key employees of the Company or its affiliates are eligible for participation in the 2008 Plan which provides for the issuance of options, restricted stock and stock equivalents at the discretion of the Board.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Non-Executive Directors&#8217; Share Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">This stock grant plan provides part of Directors&#8217; remuneration. Under this plan, non-Executive Directors receive a combination of cash and common stock for their participation in Board meetings. The number of shares of common stock granted is calculated based upon the market price of the Company&#8217;s common stock on October&#160;1 of the&#160;year preceding the grant. Common stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_RttAkf8bFk2fM-__BTe14Q">30,911</ix:nonFraction> and <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr__90USECWskCo4CyOtP9n3w">19,712</ix:nonFraction> shares, respectively. The Company recognized stock-based compensation for these share grants of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="0" id="Narr_6L-45vBD1kWpbGMC7l7bvw">319,002</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensation" scale="0" id="Narr_BRE9HIZcBUWOFRT-J9xDDQ">318,991</ix:nonFraction> for the&#160;years ended December&#160;31, 2021 and 2020, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company measures and recognizes compensation expense at fair value for all share-based payments, including stock options. Stock-based compensation for the Employee Share Incentive Plan, Employee Share Option Plan and the 2008 Equity Incentive Plan totaled $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" scale="0" id="Narr_gXeIrDKvbEOh1lXKiOa71g">137,215</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax" scale="0" id="Narr_9syS3pN_fE-omkpjGHXiLA">125,487</ix:nonFraction> for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and is included in general and administrative expenses in the accompanying consolidated statements of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The significant weighted average assumptions for the&#160;years ended December&#160;31, 2021 and 2020 were as follows:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="Tb_Q1Y2h7fHvEidQiSilsWJlw" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="Tc_eimfsM5n00yk2hUUcBSmGw_2_2">0.20</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="Tc_qeSGq2yAXUOjSZ8O6oxQ9g_2_4">0.17</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected option life (years)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="Tc_H3ds7U8TgUi5N1sa8TepJA_3_2"> 1.2</ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="Tc_OdriqBIyukaUAunrIoqtHw_3_4"> 1.1</ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="Tc_cKVG_VfumE-ejUwQJjnnPA_4_2">31.92</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="Tc_JWFxuua33kWGDgDC5Rxu6g_4_4">51.19</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="Tc_4IR05QKO8US0HYgb_mzD_w_5_2">2.87</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="4" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="Tc_0EeYxToC9EuOQeE8KgXmOA_5_4">2.42</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">72</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:11.5pt;"><a id="_e2d9e475_5a95_4a0a_ab83_9f844c648c35"></a><a id="Tc_szba3zkUgk-lP55vY0-9rw_1_7"></a><a id="Tc_CLTgArdeA0W6gHOH-CWatg_2_4"></a><a id="Tc_XNoZkCQ6Y0a5-eAZ5s662w_2_7"></a><a id="Tc_62i5TENvP0C27dQcrlyDYQ_3_4"></a><a id="Tc_iGxgbydP-0irozZZmQsc_w_3_7"></a><a id="Tc_jlGmPTMYLkGwcTrC0PTswQ_3_9"></a><a id="Tc_Y8F5ytf_RUid0MFhCxDlpA_4_4"></a><a id="Tc_MjRCVkpF6kOe17KsnxLSMg_4_7"></a><a id="Tc_Y3jaIv7ta0O7IxFC9_1LUg_4_9"></a><a id="Tc_1bGKPJuNmk6KULYieh9PkQ_5_2"></a><a id="Tc_yfWHbxI1l0K7769nEX_a9g_5_4"></a><a id="Tc_Mzb8j2cWzUuwjMhwnmaxfA_5_7"></a><a id="Tc_8xxrpQUmtUGd4WUR22OCwg_5_9"></a><a id="Tc_olCBXQDEaECPBbrdzumnzw_6_0"></a><a id="Tc_nQCeedJ3j0-WvvNa85xSNw_6_4"></a><a id="Tc_p3BFhqsJhEmUPvaUifV_LQ_7_0"></a><a id="Tc_4co-ycj8dU61Okj7bEWmhQ_8_0"></a><a id="Tc_Lj3SKA7gckCA28Hny5xjbg_9_0"></a><a id="Tc_bSE_LXhnTEOIyPO2G5YwCA_10_0"></a><a id="Tc_1_pqaSvYOkOM6MsBBQDN5w_10_4"></a><a id="Tc_6OpiTEYnRUumHf456WCjRA_10_8"></a><a id="Tc_HiydQz-iQEW-qwQlg58tIA_10_9"></a><a id="Tc_K45b5qmsAku2sJeMUdI9nA_10_10"></a><a id="Tc_8Hsepj8r106PVAqVgFD6qg_11_0"></a><a id="Tc_yIjA0pefyUeaMDS6fa9mRQ_11_2"></a><a id="Tc_VUKvp0FyS0S7vuQnnabBzw_11_4"></a><a id="Tc_K6sCSnwLGkWz2lgQwcMLCg_11_5"></a><a id="Tc_ZoxMl3dthUKyQTpejOzsAg_11_7"></a><a id="Tc_QvycCXruMEutDKJa3YqXEg_11_8"></a><a id="Tc_13Cie2cjcUGLltrEX1-PwQ_11_9"></a><a id="Tc_kR6SfeIgg0mm2t8aEJywKw_11_10"></a><a id="Tc_0VFejpMyVU-8fIVNzhEp3A_1_2"></a><a id="Tc_f8HWaWcdnkWN9AkktP0HrQ_1_5"></a><a id="Tc_9HlUge3dZUG6fXrnpXmnkw_2_0"></a><a id="Tc_9yJ9KdPvh0-63mjygYtBjA_3_0"></a><a id="Tc_JGZGWcMVMkuIxEHNU56uig_3_2"></a><a id="Tc_khIIpaS95EWoWURVgLpt0Q_3_5"></a><a id="Tc_5ninkapR4kGuRtlmOv8PQw_4_0"></a><a id="Tc_8Go2SqqfikasZv5M9egRAQ_6_0"></a><a id="Tc_Kw_JEnl_2kSv2izLWN4JRA_7_0"></a><a id="Tc_ZOip08hWtUOPyJm78wdqCg_7_2"></a><a id="Tc_SMAHEd2y_UuIZjIa2o1aBw_7_5"></a><a id="Tc_ZOJo2CN6bUOSCc06bX-hfw_8_0"></a><a id="Tc_Lyjgfjwt4kSz3KW0THD4eA_9_0"></a><a id="Tc_oSIaCYrH9U-GdbE1ZEpa2A_11_0"></a><a id="Tc_HXK2L49kA02dP1_eOjNXJw_12_0"></a><a id="Tc_96hudfzYZkyDUdGv5ZMEiA_12_2"></a><a id="Tc_Im8IN2qlAEi5VTZxk8Wynw_12_5"></a><a id="Tc_AJfG33Pc-ku4orXvKMlkOg_13_0"></a><a id="Tc_1HME1DEXqkK05UhKbTHVbA_14_0"></a><a id="Tc_60CleFWDa06lrTnHWdK4Iw_16_0"></a><a id="Tc_LMUJvAR4vESDJsD5v5VAUg_16_2"></a><a id="Tc_5zpFKfhjWEuSDoNWr8FDqw_16_5"></a><ix:continuation id="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont2" continuedAt="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont3"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="Tb_RmY-9R_vYkmN1sVAljwZRg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the Company&#8217;s stock option activity for the&#160;year ended December&#160;31, 2021 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life&#160;(Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Value&#160;(1)</b></p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding at beginning of period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="Tc_pyhiqNPAfk2G-1KbxzDq0A_6_2">10,030</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="Tc_SrHP2Qv0M0erbBFYOzoNLA_6_5">12.98</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Tc_7R4j9iOfUEav5fSks3KMxQ_7_2">12,032</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="Tc_1k3nVr3k40qjQBGkzhnsew_7_5">9.33</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="0" id="Tc_E5uGixH7S0ajYFfKHIXXGA_8_2">2,106</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="Tc_5ih29pwRYkC9SUNIf1cung_8_5">8.10</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited/expired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="0" id="Tc_UlmRDBhCjUiHKgUflL41Ww_9_2">9,466</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" id="Tc_1hEb3TJTNkeUU-992A2PLw_9_5">9.44</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="Tc_ozpAAa1Pz0-O3d9ESf18kw_10_2">10,490</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="Tc_JA7MrKDwRUWTpGgCjAP03w_10_5">12.98</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="Tc_ptorDRilgEud922LUAievg_10_7"> 2.30</ix:nonNumeric></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercisable as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">The intrinsic value of a stock option represents the amount by which the fair value of the underlying stock, measured by reference to the closing price of the common shares of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="cwco:ClosingPriceOfCommonShares" scale="0" id="Narr_x60_hWcJrE65YPBVUY0AnQ">10.64</ix:nonFraction></span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> on the Nasdaq Global Select Market on December&#160;31, 2021, exceeds the exercise price of the option.</span></td></tr></table><div style="margin-top:12pt;"></div></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" scale="0" id="Narr_FC1wEwO0GkaO7hjkYFdUUg">10,490</ix:nonFraction> non-vested options were outstanding, with weighted average exercise price of $<ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="2" format="ixt:numdotdecimal" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="Narr_T29YIUX1OEW8zLbAYXsO6g">12.98</ix:nonFraction>, and average remaining contractual life of <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" format="ixt-sec:duryear" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" id="Narr_EAu4ax8lSUOIzgiiDkJUwg">2.30</ix:nonNumeric>&#160;years.&#160;The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_KsdVl-TcrE2EB_xPG1O7Kw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" id="Narr_nEfDDfI25UG2c38j8AeJuQ">16,554</ix:nonFraction> as of December&#160;31, 2021 and are expected to be recognized over a weighted average period of <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="Narr_u2hovjYzjk2DaCsDZJmyEw">2.30</ix:nonNumeric>&#160;years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, unrecognized compensation costs relating to redeemable preferred stock rights outstanding were $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" id="Narr_joJrat4cFUSjtn1N6CqhJw">147,074</ix:nonFraction> and are expected to be recognized over a weighted average period of <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg" format="ixt-sec:duryear" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" id="Narr__4AcG50c7UKxb13z_oOXYw">1.17</ix:nonNumeric>&#160;years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table summarizes the weighted average fair value of options at the date of grant and the intrinsic value of options exercised during the years ended December 31, 2021 and 2020:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" id="Tb__4qmZ1dgHEuETVrkaNDxbg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price below market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_eDN37ynhXkWzWlTmvuQp8w" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_grADwaYS5kuJ0RDoa9zm9w_3_3">3.71</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_iZPYwl2HZ02nexQzUx8a2A" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_mfBs54CHHUyL-WfJTRzUUA_3_6">2.70</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_MHksL3_4KUWwRcG0PTPHCQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_4c0z3hSOH0inQMfuGNn3hg_4_3">3.71</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_PmmGV0jAV0WsIRY0tKIu7g" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_2rcTwi7jfEmmymJV1xr1vQ_4_6">2.70</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price at market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_17--TX751keZOsfNqkcolA" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_fdz-FgtOTEKxuG7HvNrSSA_7_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_LI5h7HjgHUSEj_Q_th4x4g" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_Zn-pHLksw0-SHH9s2YUkrA_7_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; common stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_qesoc-vMc0isIqsmUe-XyA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_E6HY_YuqKUuvFzyJjtYNng_8_3">2.89</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_WLmUs0F_OkSgBJDKkXD0HQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_vSrprIPrmEqbdowlxdps-Q_8_6">2.45</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_btVR53m-jUGESeOtljKk4Q" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_-Cs9rkD11ku3qfy3cg2leg_9_3">2.89</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_JIdK-cug7EGsXkUkbWQ3WQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_6M6Su6IosUqTq0h733O36g_9_6">2.45</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price above market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_3SIn1N2pn0mCFJlU7bK--g" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_YuLB8fZ0MEezSmHP0f9_MQ_12_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_0ptnBVw1S0WnjglpvuTvYQ" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_v3VFkYkGzkO66Mn1hqADVg_12_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_duu6DiK0skaZSCkjVOc2Sw" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_ObQcPxj7lU2A8eDF20uuwA_13_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_mV1UvFExFEeWFRyR2eypCw" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_x2WAE5I2LU2vr3LcX42Ivw_13_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_X205sNsqy0G5w-LA4lrbDQ" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_9upnQEQSJEaZpmV_qB1iRw_14_3">&#8212;</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_u9N7H5fmh0KZlJkCM3eR1Q" decimals="0" format="ixt:zerodash" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="Tc_6-TOaz7gnkm7pRbzi41p8Q_14_6">&#8212;</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total intrinsic value of options exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" id="Tc_0oek9PssrEikXPIM06Oieg_16_3">7,876</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" scale="0" id="Tc_buMZwc23oUW99brBnVbX0w_16_6">3,891</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Executive Long-Term Incentive Compensation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Board of Directors approved changes to the long-term incentive compensation for the Company&#8217;s Executive Officers effective for 2015 and thereafter to better align the interests of its Executive Officers with those of its shareholders. The revised long-term compensation plan includes a combination of performance and non-performance-based grants of common stock from the shares of Company stock provided for issuance under the 2008 Equity Incentive Plan.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The non-performance-based stock grant rights, which are issued on January 1 of each year, vest in one-third increments at the end of each&#160;year over a <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" format="ixt-sec:durwordsen" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Narr_YU9i5Tvql0CSpc2lxMmk6g">three-year</ix:nonNumeric> period. The number of non-performance-based stock grant rights issued on January </p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">73</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_FTvEQKQO4E-QUzl4TbTynQ_cont3"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">1, 2021 and 2020 were <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_S1Gu4NZpwU6HmET72gBVbQ">26,403</ix:nonFraction> and <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_ssdbukT2l0WuhXAfBAA2ug">23,458</ix:nonFraction>, respectively. These stock grant rights vest in one-third increments over the <span style="-sec-ix-hidden:Hidden_FTMbIkzyt0eqy4QDdP_stg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three-year</span></span> periods ending December 31, 2023 and 2022, respectively. The total number of vested shares issued under prior years&#8217; non-performance stock grant rights totaled <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation" scale="0" id="Narr_o-huwooDuEOQVFB2jjWQag">25,789</ix:nonFraction> and <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation" scale="0" id="Narr_TVdRksWbNE26FQDBkmACBQ">28,891</ix:nonFraction> in the years ended December 31, 2021 and 2020, respectively. For the&#160;years ended December&#160;31, 2021 and 2020, the Company recognized $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" id="Narr_v1lJ9c8pUU6kVcrS0y-gwQ">306,250</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" id="Narr_0X0yR4Y7RkGe99wC7nJliA">344,940</ix:nonFraction> in stock-based compensation expense, respectively, related to the incremental vesting of the non-performance stock grant rights.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The performance-based grants may be earned at the end of each&#160;year based upon the Company&#39;s <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" format="ixt-sec:durwordsen" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" id="Narr_4zGr0s38HUmm3BbNXIBh7w">three-year</ix:nonNumeric> cumulative financial performance relative to <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw" format="ixt-sec:durwordsen" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" id="Narr_JgdQiPI2Sk-owOrcE-4C6A">three-year</ix:nonNumeric> cumulative financial performance targets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">A total of <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_PcerjDRhyU6ddlGyeUqUFQ">18,419</ix:nonFraction> stock grant rights were earned as of December&#160;31, 2021 based upon the Company&#8217;s actual financial performance relative to the cumulative financial performance targets for the <ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A" format="ixt-sec:durwordsen" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" id="Narr_Mxx0tjNV206EKmxGeFfjfw">three-year</ix:nonNumeric> period ended December 31, 2021, and the Company recognized $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" id="Narr_wq6BfpZ7zEiNZxhUGd3HUQ">214,765</ix:nonFraction> in stock-based compensation for the&#160;year ended December&#160;31, 2021 related to these grants. The shares associated with these grants will be issued in 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A total of <ix:nonFraction unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="Narr_LhLBHsxQJEeGE5SDLIUFEA">31,788</ix:nonFraction> stock grant rights were earned as of December&#160;31, 2020 based upon the Company&#8217;s actual financial performance relative to the cumulative financial performance targets for the <ix:nonNumeric contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" format="ixt-sec:durwordsen" name="cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" id="Narr_xexvbQKzR0OWVL3uO8PAyw"><span style="-sec-ix-hidden:Hidden_8mTRR9wXqkSZbjtKI0msDQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span>-year</ix:nonNumeric> period ended December 31, 2020, and the Company recognized $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" id="Narr_olzoL_yyiUSw_VjZMr9zjg">373,843</ix:nonFraction> in stock-based compensation for the&#160;year ended December&#160;31, 2020 related to these grants. The shares associated with these grants were issued in 2021.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="Tb_FoVpqSjATEKOrHH7-CtDiQ" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">17. Retirement benefits</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Retirement plans are offered to all employees in California, Florida, Cayman Islands and Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees&#8217; contributions up to certain amounts. The Company matches contributions of up to <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ" decimals="4" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" scale="-2" id="Narr_eyrlaDcW90CLWSOINIpnog">5</ix:nonFraction>% of a maximum salary amount of $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" scale="0" id="Narr_VvorOeyfOkynF7KFjIB5GQ">104,400</ix:nonFraction> for Cayman Islands employees, fully matches all contributions made by employees in the Bahamas, and matches contributions of up to&#160;<ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_FL_vVakg1b1O0aRtqSi86JVnQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" scale="-2" id="Narr_OIrqPSwTG0SrrqK42-eCAA">6</ix:nonFraction>% of salary for Florida employees. For California employees, the Company matches contribution amounts up to <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" id="Narr_t5MLGZfl3E-cy6WBe-DNRg">2</ix:nonFraction>% of the employee&#39;s salary and matches <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_jKEZmTVO80GP5Fl_jTaGjA" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" scale="-2" id="Narr_5n_bHzsG8ES1bw0TwiHvVg">25</ix:nonFraction>% of contributions above this <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" scale="-2" id="Narr_0KwMpSwMTEeE0sdnusKZ1A">2</ix:nonFraction>% threshold, up to <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_srt_RangeAxis_srt_MaximumMember_5UnaWkFxXUaiqbEuHv1xVQ" decimals="2" format="ixt:numdotdecimal" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" scale="-2" id="Narr_J5TE5AUmckeUIxi7NdaKQA">10</ix:nonFraction>% of the employee&#8217;s salary. The Company&#8217;s expense for these plans was $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PensionExpense" scale="0" id="Narr_oVtCt0jBY0mlT0C50Dm35Q">584,278</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:PensionExpense" scale="0" id="Narr_KlQ5x2iizEiS-lcEtIqmgw">576,096</ix:nonFraction> for the years ended December 31, 2021 and 2020, respectively.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:FinancialInstrumentsDisclosureTextBlock" id="Tb_3rq_T-zF8keXxgsmFdlwKg" continuedAt="Tb_3rq_T-zF8keXxgsmFdlwKg_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">18. Financial instruments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Credit risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is not exposed to significant credit risk on its retail customer accounts as its policy is to cease supply of water to customers&#8217; accounts that are more than <span style="-sec-ix-hidden:Hidden_odlCgAb2tkGuHko8GsFcGA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45&#160;days</span></span> overdue. The Company&#8217;s exposure to credit risk is concentrated on receivables from its bulk water, services, and manufacturing customers. The Company considers these receivables fully collectible and therefore has not recorded an allowance for these receivables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Interest rate risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is not subject to significant interest-rate risk arising from fluctuations in interest rates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Foreign exchange risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">All relevant foreign currencies other than the Mexican peso and the euro have been fixed to the dollar for more than <span style="-sec-ix-hidden:Hidden_bdKxU7g9K0WrA2yhp7tZlw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">20&#160;years</span></span> and as a result, the Company does not employ a hedging strategy against exchange rate risk associated with the reporting in dollars. If any of these fixed exchange rates becomes a floating exchange rate or if any of the foreign currencies in which the Company conducts business depreciate significantly against the dollar, the Company&#8217;s consolidated results of operations could be adversely affected.</p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">74</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_44cd2796_203b_41fd_bcfb_bca6762c2384"></a><a id="Tc_9XU5zy52W0aaMDZJ8IUZ0Q_1_2"></a><a id="Tc_SgHKe1MWYkiKS17GFcJwTA_2_2"></a><a id="Tc_jhkJPn7MN0yZIUHvWJJSyw_2_5"></a><a id="Tc_Yzb7BvJSykem9w1b4tp0tw_2_8"></a><a id="Tc_F1s9yGgZSUmG42apvaUCKA_2_11"></a><a id="Tc_TOauZsLS-0Gu7YeKZ3Obaw_3_0"></a><a id="Tc_UVc-AfxaOU2cN3MFYOxzgA_4_0"></a><a id="Tc_9I4BY-pnDkqoX4VV9TBwkw_5_0"></a><a id="Tc_kMEqe4faxUSS0VcJPeA6Ag_5_2"></a><a id="Tc_t2addvJsgUOQ0Hr-YPqkeQ_5_3"></a><a id="Tc_GA5O91miMUSpX6ZDLLpMcw_5_5"></a><a id="Tc_41ELaXR_20WVzT4YCHSMBw_5_8"></a><a id="Tc_VaQmlSyy-0m5vhsZPRdNHA_5_9"></a><a id="Tc_6j7l8H8V80untYgn4lvSlQ_5_11"></a><a id="Tc_uIbvqXC3x02bSOC3TO11sQ_6_0"></a><a id="Tc_lhMPri9NXU2d037uqGP_iQ_6_3"></a><a id="Tc_6Wyw4wbmW0OYwZjpN7B4Qw_6_6"></a><a id="_887c7c58_0931_4ecb_9503_59eb58976429"></a><a id="Tc_RoMEOB4ltUKeeyuJC69gYg_1_2"></a><a id="Tc__7O2NB7hKEOtBaYq1JFkZA_2_2"></a><a id="Tc_CGEVk19xiEG-zbFjfIJBlw_2_5"></a><a id="Tc_Ae4miO6GT068j7bKkVZ_Hg_2_8"></a><a id="Tc_MVOLItIkM0-ranqsTjU0Fw_2_11"></a><a id="Tc_i2-42Hm2skayJMqbIG7Vsw_3_0"></a><a id="Tc_lI9F-Z5AIU6PI-lHIWm8AQ_4_0"></a><a id="Tc_jmEDRiSN3U6357IN7pQ7og_5_0"></a><a id="Tc_UYjHOHSpa0uBealSJRh2fg_5_2"></a><a id="Tc_lvPF4qEXMEKFNrJWKLpbJA_5_3"></a><a id="Tc_AdZiQXxyFEauU8j_9LKh7Q_5_5"></a><a id="Tc__4_P01jMAEylkI3CD5jRZQ_5_6"></a><a id="Tc_qoNyD640PEOZtmmkdIH_HQ_5_8"></a><a id="Tc_ueqqmMDiVkSpeJJkLOZB0Q_5_11"></a><a id="Tc_V5nuT5J6yUe_Mb1a3AWkLA_1_0"></a><a id="Tc_Krzdoi6il0iC6-7prN19FA_2_0"></a><a id="Tc_3RZDEDclN0mHNKMCWm51dg_2_2"></a><a id="Tc_O7pw094hhU6xguOVHZ00hQ_3_0"></a><a id="Tc_5sVc1ddY_0O6mh7mN21YVw_4_0"></a><a id="Tc_mm4mMmWTA0CLS6f0eMl_mg_4_2"></a><ix:continuation id="Tb_3rq_T-zF8keXxgsmFdlwKg_cont1" continuedAt="Tb_3rq_T-zF8keXxgsmFdlwKg_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Fair values:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021 and 2020, the carrying amounts of cash equivalents, accounts receivable, accounts payable, accrued expenses, accrued compensation, dividends payable and other current liabilities approximate their fair values due to the short-term maturities of these instruments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Under US GAAP, fair value is defined as the exit price, or the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants as of the measurement date. US GAAP guidance also establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. Observable inputs are inputs market participants would use in valuing the asset or liability and are developed based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#8217;s assumptions about the factors market participants would use in valuing the asset or liability. The guidance establishes three levels of inputs that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 1&#160;- Quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 2&#160;- Inputs other than Level&#160;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.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 3&#160;- Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Assets and liabilities are classified in their entirety based on the lowest level of input that is significant to the fair value measurements. The Company reviews its fair value hierarchy classifications on a quarterly basis. Changes in the observability of valuation inputs may result in a reclassification of levels for certain securities within the fair value hierarchy.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s fair value hierarchy for assets and liabilities measured at fair value as of December&#160;31, 2021 and 2020:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" id="Tb_GhCVFJcv1UayRdthfa_8gg" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Certificate of deposit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_x5jvKJPM5kyNOvCafquv3A" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_9gAbaBEvHkqLscWyV1kQ5w_5_6">2,500,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_2DtZn0YcmUuWeIvU518cjA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_JRYIqtluBEC2wB32HKSnJA_5_12">2,500,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net asset arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Xu56YY7wuUuQ4iEUJyq88Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_vKkQgyRKm0y_SR1-Obr0-w_6_9">128,000</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" scale="0" id="Tc_Hr2L3tE5LkKrGCjwHCIhxw_6_12">128,000</ix:nonFraction></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net liability arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Muen2zsr-ESASfWfylZ8cg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" scale="0" id="Tc_orNCOB0Bz0CLpY1HTvGuuA_5_9">690,000</ix:nonFraction>)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" scale="0" id="Tc_dQY5ZveCYE6_AIKdAUd9Tw_5_12">690,000</ix:nonFraction>)</p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the Level 3 asset for the&#160;year ended December&#160;31, 2021:</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" id="Tb_INHhZxJ76Uy8cdRfZirD9g" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net (liability)/asset arising from put/call options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" sign="-" scale="0" id="Tc_QCWw2JcE4EWa7A6ICIit2g_2_3">690,000</ix:nonFraction>)</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Unrealized gain</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings" scale="0" id="Tc_YTgsoKYR_k-UeVIi_CIIpQ_3_3">818,000</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" scale="0" id="Tc_Ae9LAYABokysNjy-jA-SvQ_4_3">128,000</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:continuation></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">75</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_3rq_T-zF8keXxgsmFdlwKg_cont2"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Put/call options are reported at fair value as either assets or liabilities in the consolidated balance sheets. These fair values are calculated using discounted cash flow analysis valuation techniques that incorporate unobservable inputs, such as future cash flows, weighted-average cost of capital, and expected future volatility. The inputs to these valuations are considered Level 3 inputs.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="Tb_yzfp2KmINUi0XAUbAHUdYA" continuedAt="Tb_yzfp2KmINUi0XAUbAHUdYA_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">19. Commitments and contingencies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Commitments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has entered into employment agreements with certain executives, which expire through December&#160;31, 2024 and provide for, among other things, base annual salaries in an aggregate amount of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="-5" format="ixt:numdotdecimal" name="cwco:EmploymentAgreementBaseAnnualSalaries" scale="6" id="Narr_MH2c8DfrwkOogIHpNf_x6g">3.9</ix:nonFraction> million, performance bonuses and various employee benefits.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has purchase obligations totaling approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LongTermPurchaseCommitmentAmount" scale="6" id="Narr_Clfkpwb3ekeZRaqw8I6WEQ">5.1</ix:nonFraction> million through December 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;padding-bottom:12pt;margin:0pt;">Contingencies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">COVID-19</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">The worldwide coronavirus (COVID-19) pandemic was formally recognized by the World Health Organization on March 11, 2020. In response to this pandemic, the governments of the countries in which the Company operates - the Cayman Islands, The Bahamas, and the United States - implemented preventative measures to slow the spread of COVID-19, measures which have had profound adverse consequences for the economies of those countries. Tourism, a major economic driver for the Cayman Islands, temporarily ceased due to closing of the country to tourist arrivals by air and sea travel and has yet to return to pre-pandemic levels. Tourist arrivals to The Bahamas by air and sea also declined significantly due to the pandemic and continue to be less than pre-pandemic numbers due to the continued reluctance of people to travel internationally. Overall economic activity in the United States has also declined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">As a result of the impact of the COVID-19 pandemic on the economies of the countries in which the Company operates, the Company has experienced, and could continue to experience, decreases in consolidated revenue, cash flows generated from operations, net income and overall liquidity as compared to pre-pandemic periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">Furthermore, the prolonged extension of the economic downturn created by the COVID-19 pandemic could further adversely affect the markets for the Company&#8217;s products and services. Such adverse market effects could further adversely impact the Company&#8217;s expected future cash flows from its <ix:nonFraction unitRef="Unit_Standard_item_q9VGVy0HoU-6ARV1IfDU3A" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="INF" format="ixt-sec:numwordsen" name="us-gaap:NumberOfReportingUnits" scale="0" id="Narr_3aU0TQ4Rk0ib68UT8Y7vcw">four</ix:nonFraction> reporting units and could require the Company to record impairment losses to reduce the carrying values of one or more of these reporting units due to a decline in their fair values.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">Although the Company cannot presently quantify the future financial impacts of the COVID-19 pandemic, such impacts will likely continue to have a material adverse impact on the Company&#8217;s consolidated financial condition, results of operations, and cash flows. Given the uncertainty associated with the resolution of this pandemic, the Company cannot presently determine how long such adverse financial impacts may last.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cayman Water</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company sells water through its retail operations under a license issued in July 1990 by the Cayman Islands government (the &#8220;1990 license&#8221;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January 2018, the Company continues to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman Island: Seven Mile Beach and West Bay. In 2021 and 2020, the Company generated approximately <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="cwco:CaymanWaterRetailOperationsPercentageOfRevenue" scale="-2" id="Narr_t7Tpuy6mdUq8eiIxs4S_kQ">33</ix:nonFraction>% and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="cwco:CaymanWaterRetailOperationsPercentageOfRevenue" scale="-2" id="Narr_n91kbu9f4k-sgebshqbdpg">32</ix:nonFraction>%, respectively, of its consolidated revenue and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="2" format="ixt:numdotdecimal" name="cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit" scale="-2" id="Narr_RI7bkfnCXUyaIn_gVtq4yg">47</ix:nonFraction>% and <ix:nonFraction unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="2" format="ixt:numdotdecimal" name="cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit" scale="-2" id="Narr_RANFrBorp0e9RVIk3YGkcQ">44</ix:nonFraction>%, respectively, of its consolidated gross profit from the retail water operations conducted under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">76</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_yzfp2KmINUi0XAUbAHUdYA_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The 1990 license was originally scheduled to expire in July 2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the 1990 license expired on January 31, 2018. The Company continues to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with its understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. The Company continues to pay the royalty required under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#8220;OfReg&#8221;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services and promoting competition. OfReg, which began operations in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for the economic regulation of the water utility sector and the negotiations with the Company for a new retail license from the WAC to OfReg in May&#160;2017. The Company began license negotiations with OfReg in July&#160;2017 and such negotiations are ongoing. The Company has been informed during its retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of its license in a manner that could significantly reduce the operating income and cash flows the Company has historically generated from its retail license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is presently unable to determine what impact the resolution of its retail license negotiations will have on its cash flows, financial condition or results of operations but such resolution could result in a material reduction (or the loss) of the operating income and cash flows the Company has historically generated from Cayman Water&#8217;s retail operations and could require the Company to record impairment losses to reduce the carrying values of its retail segment assets. Such impairment losses could have a material adverse impact on the Company&#8217;s consolidated financial condition and results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"><i style="text-decoration-line:underline;text-decoration-style:solid;">CW-Bahamas</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">CW-Bahamas&#8217; accounts receivable balances (including accrued interest) due from the WSC amounted to $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_0UrMNm_IgE20WJPYFn3V2Q" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="Narr_oiVg1xoIIU-nXXBvTHlvig">21.5</ix:nonFraction> million and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_srt_MajorCustomersAxis_cwco_WSCMember_NAQlDRECXky4oRc5QZd7lg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNet" scale="6" id="Narr_YX739ncXxkSRag9HfmI_bw">16.8</ix:nonFraction> million as of December 31, 2021 and 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable from the WSC. When these delays occur, the Company holds discussions and meetings with representatives of the WSC and The Bahamas government, and as a result, payment schedules are developed for WSC&#8217;s delinquent accounts receivable. All previous delinquent accounts receivable from the WSC, including accrued interest thereon, were eventually paid in full. Based upon this payment history, CW-Bahamas has never been required to provide an allowance for doubtful accounts for any of its accounts receivable, despite the periodic accumulation of significant delinquent balances. As of December 31, 2021, the Company has not provided an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable from the WSC. The Bahamas government and the WSC continue to make intermittent payments on these accounts receivable, and such payments amounted to approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_FG065aqhNESf5l2w1wZLgg" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="6" id="Narr_27NcgFwtC0iZUpLcfYgwrA">22.9</ix:nonFraction> million for the year ended December 31,&#160;2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">If CW-Bahamas continues to be unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i)&#160;CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii)&#160;the Company may be required to cease the recognition of revenue on CW-Bahamas&#8217; water supply agreements with the WSC; and (iii)&#160;the Company may be required to provide an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable. Any of these events could have a material adverse impact on the Company&#8217;s consolidated financial condition, results of operations, and cash flows.</span></p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:RelatedPartyTransactionsDisclosureTextBlock" id="Tb_GfdS9kfXFk--Igt6dyIAeQ" continuedAt="Tb_GfdS9kfXFk--Igt6dyIAeQ_cont1" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">20. Related party transactions</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company, through PERC and the services segment, purchases engineering and technology support services from various companies with a minority shareholder who is also a minority shareholder of PERC. During the years ended December 31, 2021 and 2020, the Company made total purchases of services of approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_WlNDh4mjjkm0ySB9dfUnIg">438,000</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rvqLB_HJpUewumqfdV2Nsw" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty" scale="0" id="Narr_m7q4tSAagEukzCGovNv9vw">1,349,000</ix:nonFraction> </p></ix:nonNumeric></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">77</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><ix:continuation id="Tb_GfdS9kfXFk--Igt6dyIAeQ_cont1"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">from these companies, respectively. These total purchases are included in the Company&#8217;s cost of revenue in the accompanying consolidated statements of <span style="background:#ffffff;">income</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On February 1, 2021, PERC entered into a sublease agreement with a related company commencing March 14, 2021 and ending August 31, 2021. This lease has been extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31,&#160;2021, the Company recognized approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" scale="0" id="Narr_XOIdQ1AAU0y9Gwc66YJBeA">77,000</ix:nonFraction> of expense related to this lease. This lease amount is included in the Company&#39;s general and administrative expenses in the accompanying consolidated statements of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The total amount of accounts payable outstanding to these companies as of December 31, 2021 and 2020, was approximately $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rOFFYC2JR06pIy16OuiGlQ" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableRelatedPartiesCurrent" scale="0" id="Narr_OotvpLUfY0uqkwtE4lLZmQ">164,000</ix:nonFraction> and $<ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_EWXiKUL8zEWQaZQF2E-9Qg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableRelatedPartiesCurrent" scale="0" id="Narr_5D4CqYzEyk6QpjJVyJ7QTA">201,000</ix:nonFraction>, respectively.</p></ix:continuation><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><a id="Tc_7vNCT6m2VkOTdtPqmkWofQ_1_2"></a><a id="Tc_2XUnU_MBiUqgaNw0EhG4pQ_2_2"></a><a id="Tc_YTM5hVhzWkqqn-rlxmnsLw_2_5"></a><a id="Tc_y5C04Piz1UaRSLSPpDaj9g_3_0"></a><a id="Tc_rA9qWsw25EOyE6vN8ndIWQ_3_2"></a><a id="Tc_h_gBKJQMHU-GmsJ2ETxh1w_3_5"></a><a id="Tc_SZYU4cDNG029a8xGOgQ0Tw_5_0"></a><a id="Tc_AgIjiNRG-ECi5xEQR74DnQ_6_0"></a><a id="Tc_Yse2m_FZQkC60ReA1BfPTA_6_2"></a><a id="Tc_G_benYvnU0idQ7YbRB-yXw_6_5"></a><a id="Tc_QHX9d8ywwU-tW81HSKwD_Q_7_0"></a><a id="Tc_4DMVu0YBDkORA_XqBnI-AA_7_2"></a><a id="Tc_NlSq6JhgakOwDO8azqSrTg_7_5"></a><a id="Tc_L1DnPJX7Ok2uNPTS51c22g_8_0"></a><a id="Tc_GVjW1uGM_0yZ88AXkBf1GQ_8_2"></a><a id="Tc_XyvexBVLJUawXqhiX_cWug_8_5"></a><a id="Tc_h5o6QLsHCEeHhic7p1nLqQ_9_0"></a><a id="Tc_HLCsNTxVlk-BcDtjIrkNlQ_9_2"></a><a id="Tc_eHFkvBQGakWE23jITNXq7g_9_5"></a><a id="Tc_I4nap5Rzr0KjTfKH0TaaRQ_10_0"></a><a id="Tc_7lqEFwTFPkuQqrH2fVvyXg_10_2"></a><a id="Tc_8F5KxZIyJESpyzOF3yIc5w_10_5"></a><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:CashFlowSupplementalDisclosuresTextBlock" id="Tb_TnVpA0Quf0SlXLOe_F7IbA" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">21. Supplemental disclosure of cash flow information</p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation" id="Tb_YljqG9dxOECv9cuma7aL_g" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Interest paid in cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="0" id="Tc_jYJCcePEO0eF_Qs-F_c25Q_3_3">10,248</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:InterestPaidNet" scale="0" id="Tc_53dSuzSBBEycY_pz6GL5sw_3_6">9,669</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-cash transactions:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared but not paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPayableCurrentAndNoncurrent" scale="0" id="Tc_mqxyiEzWQkCRtTHNzeaQig_6_3">1,298,148</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DividendsPayableCurrentAndNoncurrent" scale="0" id="Tc_ca0G0XTHeE-hdXHYvvLlAg_6_6">1,289,854</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from inventory to property, plant and equipment and construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment" scale="0" id="Tc_r37xHkgBAUC-un6LjGMn3g_7_3">189,924</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment" scale="0" id="Tc_Y1BaC0SB8UiZMB60FdRyrg_7_6">73,464</ix:nonFraction></p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from construction in progress to property, plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" scale="0" id="Tc_lgbCkKLkpki4hUL9biRyoA_8_3">644,224</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" scale="0" id="Tc_O74b8RFvuUqbSpk_gLubYA_8_6">1,653,501</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Right-of-use assets obtained in exchange for new operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="0" id="Tc_8aeXmfrxu0-67UeJIKRHQw_9_3">1,852,608</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="0" id="Tc_YtW0zQj9a0W--EF3agXm9w_9_6">299,992</ix:nonFraction></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Purchases of equipment through issuance of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" scale="0" id="Tc_GyPTTwadgEq_6WgbTStvtQ_10_3">95,707</ix:nonFraction></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> <ix:nonFraction unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg" contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA" decimals="0" format="ixt:numdotdecimal" name="us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" scale="0" id="Tc_WHTNtI5pLUyvVHbmgdQhCw_10_6">122,292</ix:nonFraction></p></td></tr></table></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="Tb_HGOSI3h57E2yva1I_lnLew" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">22. Impact of recent accounting standards</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Adoption of New Accounting Standards:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">None.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Effect of newly issued but not yet effective accounting standards:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In March 2020, the FASB issued ASU No. 2020-04, Reference Rate Reform (Topic 848), which provides optional expedients and exceptions to the current guidance on contract modifications and hedging relationships to ease the financial reporting burdens of the expected market transition from LIBOR and other interbank offered rates to alternative reference rates. The guidance was effective upon issuance and may be applied prospectively to contract modifications made and hedging relationships entered into or evaluated on or before December 31, 2022. The Company is currently evaluating the impact of the new guidance on the consolidated financial statements, however the adoption of this standard is not expected to have a material impact on the Company&#8217;s consolidated financial position, results of operations or cash flows.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><ix:nonNumeric contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg" name="us-gaap:SubsequentEventsTextBlock" id="Tb_bHh_UAVSYUaRuZ7JjhcIug" escape="true"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">23. Subsequent events</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company evaluated subsequent events through the time of the filing of its Annual Report on Form&#160;10-K. Other than as disclosed in these consolidated financial statements, the Company is not aware of any significant events that occurred subsequent to the balance sheet date but prior to the filing of this report that would have a material impact on its consolidated financial statements.</p></ix:nonNumeric><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="display:none;font-family:'Times New Roman','Times','serif';line-height:0pt;margin:0pt;"><span style="font-size:0pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">78</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_97372220_67eb_4446_b9e7_53023a9e5645"></a><a id="ITEM9CHANGESINANDDISAGREEMENTSWITHACCOUN"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 9.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND </b><b style="font-weight:bold;">FINANCIAL DISCLOSURE</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">None.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_b6c03925_968e_47a8_a4f8_ae94979df095"></a><a id="ITEM9ACONTROLSANDPROCEDURES_316636"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 9A.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">CONTROLS AND PROCEDURES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Disclosure Controls and Procedures</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Disclosure controls and procedures are the Company&#8217;s controls and other procedures that are designed to ensure that information required to be disclosed by us in the reports that we file or submit under the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;) is recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules&#160;and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by us in the reports that we file under the Exchange Act 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 management recognizes that any controls and procedures, no matter how well designed and operated, can only provide reasonable assurance of achieving their objectives and management necessarily applies its judgment in evaluating the possible controls and procedures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Our management has evaluated, with the participation of our principal executive officer and principal financial officer, the effectiveness of our disclosure controls and procedures (as such term is defined in Rules&#160;13a-15(e)&#160;and 15d-15(e)&#160;under the Exchange Act) as of the end of the period covered by this report. Based upon that evaluation, our management, including our principal executive officer and principal financial officer, has concluded that, as of the end of the period covered by this report, the Company&#8217;s disclosure controls and procedures were effective at the reasonable assurance level.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Internal Control Over Financial Reporting</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-indent:-36pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Management&#8217;s Annual Report on Internal Control Over Financial Reporting</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">MANAGEMENT&#8217;S REPORT ON INTERNAL CONTROL OVER FINANCIAL REPORTING</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">Company management is responsible for establishing and maintaining adequate internal control over financial reporting. Internal control over financial reporting is a process designed by, or under the supervision of, our principal executive officer and principal financial officer and effected by the Company&#8217;s Board of Directors, management and other personnel 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 in the United States of America and includes those policies and procedures that:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">pertain to the maintenance of records that in reasonable detail accurately and fairly reflect the transactions and dispositions of the assets of the Company;</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles in the United States of America, and that receipts and expenditures of the Company are being made only in accordance with authorizations of management and Directors of the Company; and</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">&#9679;</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the Company&#8217;s assets that could have a material effect on the financial statements.</span></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">Because of inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Projections of any evaluation of effectiveness to future periods are subject to the risks that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">79</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">Management assessed the effectiveness of the Company&#8217;s internal control over financial reporting as of December&#160;31, 2021. In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in <i style="font-style:italic;">Internal Control-Integrated Framework (2013)</i>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">Based on our assessment, management has concluded that, as of December&#160;31, 2021, the Company&#8217;s internal control over financial reporting was effective at the reasonable assurance level.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Changes in Internal Control Over Financial Reporting</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">There were no changes in the Company&#8217;s internal control over financial reporting identified in connection with the evaluation of such internal control that occurred during the Company&#8217;s last fiscal quarter that have materially affected, or are reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">80</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_98c6fca5_91eb_44b0_97d9_35966a77e69f"></a><a id="ITEM9BOTHERINFORMATION"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 9B.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">OTHER INFORMATION</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">None.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:54pt;text-indent:-54pt;margin:0pt;"><span style="color:#70ad47;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_b1f6ddd8_b225_4a2a_86e1_724824d6195c"></a><a id="ITEM9C_DISCLOSUREREGARDINGFOREIGN"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 9C.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Not applicable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="color:#70ad47;font-weight:bold;visibility:hidden;">&#8203;</span></p><a id="_8d6d172b_4bef_4e03_8280_cac7eaff7a0b"></a><a id="PARTIII_659249"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">PART&#160;III</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="ITEM10DIRECTORSEXECUTIVEOFFICERSANDCORPO"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 10.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to our Directors and the nomination process is contained in the proxy statement for our 2022 Annual Meeting of Shareholders to be filed with the SEC (the &#8220;Proxy Statement&#8221;) under the heading &#8220;Proposal 1 - Election of Group I Directors&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to our Executive Officers is set forth in the Proxy Statement under the heading &#8220;Executive Officers.&#8221;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to our audit committee and our audit committee financial expert is contained in the Proxy Statement under the heading &#8220;Proposal 1 - Election of Group I Directors - Committees of the Board of Directors - Audit Committee&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to compliance with Section&#160;16(a)&#160;of the Exchange Act is contained in the Proxy Statement under the heading &#8220;Executive Compensation - Delinquent Section&#160;16(a)&#160;Reports&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Board of Directors has adopted a Code of Business Conduct and Ethics (the &#8220;Code&#8221;) that applies to all of the Company&#8217;s Directors, Officers (including the Principal Executive Officer, Principal Financial Officer and Principal Accounting Officer) and employees. Information related to the Code is contained in the Proxy Statement under the heading &#8220;Proposal 1 - Election of Group I Directors - Governance of the Company&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We intend to disclose future amendments to certain provisions of the Code, or waivers of such provisions granted to Executive Officers and Directors, on our website within four business days following the date of such amendment or waiver.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_0d713b1d_acd9_4bae_a7c1_8e7cb670e957"></a><a id="ITEM11EXECUTIVECOMPENSATION_314827"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 11.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">EXECUTIVE COMPENSATION</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to executive compensation and director compensation is contained in the Proxy Statement under the heading &#8220;Executive Compensation&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_5e711ce0_5084_4a57_a1ab_e9007f5bb8d9"></a><a id="ITEM12SECURITYOWNERSHIPOFCERTAINBENEFICI"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 12.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND</b><b style="font-weight:bold;"> RELATED STOCKHOLDER MATTERS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to security ownership of certain beneficial owners and management is contained in the Proxy Statement under the heading &#8220;Security Ownership of Certain Beneficial Owners and Management and Related Shareholders Matters&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">81</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_ea5a4a1d_61bb_484a_95a6_f6e868104f05"></a><a id="ITEM13CERTAINRELATIONSHIPSANDRELATEDTRAN"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 13.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR</b><b style="font-weight:bold;"> INDEPENDENCE</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information required by this item with respect to such contractual relationships and director independence is contained in the Proxy Statement under the headings &#8220;Executive Compensation - Transactions With Related Persons&#8221; and is incorporated by reference in this Annual Report.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_c148cd60_310b_4fc7_922e_1b70186f4fbc"></a><a id="ITEM14PRINCIPALACCOUNTINGFEESANDSERVICES"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 14.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">PRINCIPAL ACCOUNTING FEES AND SERVICES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Information with respect to principal accounting fees and services are contained in the Proxy Statement under the heading &#8220;Proposal 7 Ratification of the Selection of Independent Accountants - Principal Accounting Fees and Services&#8221; and is incorporated by reference in this Annual Report.</p><a id="_61ae3465_181a_423d_bf78_a569d25838ec"></a><a id="PARTIV_761160"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">PART&#160;IV</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="ITEM15EXHIBITSFINANCIALSTATEMENTSSCHEDUL"></a><table style="border-collapse:collapse;border:0;"><tr><td style="vertical-align:text-top;white-space:nowrap;width:54pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ITEM 15.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">EXHIBITS, FINANCIAL STATEMENTS SCHEDULES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">1. Financial Statements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Consolidated Water Co. Ltd. Financial statements found in ITEM 8. FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA are incorporated herein by reference.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">2. Financial Statement Schedules</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">None</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">3. Exhibits</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Exhibits listed in the Exhibit&#160;Index immediately preceding the Signatures are filed as part of this Annual Report on Form&#160;10-K.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><a id="_48f5d925_20f4_4e88_b9d9_b1ab9873197d"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CONSOLIDATED WATER CO. LTD.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">INDEX TO EXHIBITS FILED WITH 10-K</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.0978775%;padding-left:0pt;padding-right:0pt;width:100.19%;"><tr style="height:1pt;"><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th></tr><tr><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Number</b></p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Exhibit Description</b></p></th></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">3.1</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014408004641/g13780exv3w1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amended and Restated Memorandum of Association of Consolidated Water Co. Ltd. dated May 14, 2008 (incorporated by reference to Exhibit 3.1 filed as part of our Form 8-K filed June 6, 2008, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">3.2</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014406009452/g03508exv4w2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amended and Restated Articles of Association of Consolidated Water Co. Ltd. dated May 10, 2006 (incorporated by reference to Exhibit 4.2 filed as part of our Form F-3 filed October 12, 2006, Commission File No. 333-137970)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">3.3</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014407004807/g07423exv3w1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to Articles of Association of Consolidated Water Co. Ltd. dated May 11, 2007 (incorporated by reference to Exhibit 3.1 filed as part of our Form 8-K filed May 14, 2007, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">3.4</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420409029589/v150856_ex3-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to Articles of Association of Consolidated Water Co. Ltd.&#160;dated May 26, 2009 (incorporated by reference to Exhibit 3.1 filed as part of our Form 8-K filed May 27, 2009, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">4.1**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex4d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Description of Securities</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.1</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">License Agreement dated July 11, 1990 between Cayman Water Company Limited and the Government of the Cayman Islands (incorporated herein by reference to the exhibit filed as a part of our Form 20-F dated December 7, 1994, Commission File No. 0-25248)</p></td></tr></table></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">82</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.0978775%;padding-left:0pt;padding-right:0pt;width:100.19%;"><tr style="height:1pt;"><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th></tr><tr><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Number</b></p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Exhibit Description</b></p></th></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.2</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">First Amendment to License Agreement dated September 18, 1990 between Cayman Water Company Limited and the Government of the Cayman Islands. (incorporated herein by reference to the exhibit filed as a part of our Form 20-F dated December 7, 1994, Commission File No. 0-25248)</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.3</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Second Amendment to License Agreement dated February 14, 1991 between Cayman Water Company Limited and the Government of the Cayman Islands. (incorporated herein by reference to the exhibit filed as a part of our Form 20-F dated December 7, 1994, Commission File No. 0-25248)</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.4</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014402003099/g75127ex10-4.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Third Amendment to a License to Produce Potable Water dated August 15, 2001 between Consolidated Water Co. Ltd. by the Government of the Cayman Islands (incorporated herein by reference to Exhibit 10.4 filed as a part of our Form 10-K for the fiscal year ended December 31, 2001, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.5</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014403004200/g81580exv10w5.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Fourth Amendment to a License to Produce Potable Water dated February 1, 2003 between Consolidated Water Co. Ltd. by the Government of the Cayman Islands (incorporated herein by reference to Exhibit 10.5 filed as a part of our Form 10-K for the fiscal year ended December 31, 2002, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.6</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420410039056/v191246_ex10.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated July 20, 2010 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10 filed as a part of our Form 8-K filed July 23, 2010, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.7</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420412044065/v318394_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to a License to Produce Potable Water dated&#160;July 11, 2012 between Cayman Water Company Limited and the Government of the Cayman Islands (incorporated herein by reference to Exhibit 10.1 filed as a part of our Form 10-Q for the second quarter ended June 30, 2012, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.8</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420413012735/v336971_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated December 31, 2012 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1 filed as a part of our Form 8-K filed March 4, 2013, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.9&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-1x9.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated April 24, 2013 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1.9 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.10&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-1x10.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated November 6, 2013 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1.10 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.11</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414042900/v383821_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated June 30, 2014 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1 to our Form 8-K filed July 14,2014, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:34.1pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.12&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420415016020/v403209_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated January 20, 2015 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1.12 filed as a part of our Form 10-K for the fiscal year ended December 31, 2014, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.13</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420416088251/v433076_ex10-1x13.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated August 5, 2015 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated herein by reference to Exhibit 10.1.13 filed as a part of our Form 10-K for the fiscal year ended December 31, 2015, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.1.14</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420416117758/v445742_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment to License Agreement dated April 11, 2016 between the Government of the Cayman Islands and Cayman Water Company Limited (incorporated by reference to Exhibit 10.1 filled as part of our Form 10-Q for the fiscal quarter ended June 30, 2016, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr></table></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">83</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.0978775%;padding-left:0pt;padding-right:0pt;width:100.19%;"><tr style="height:1pt;"><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th></tr><tr><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Number</b></p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Exhibit Description</b></p></th></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.2</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014401004659/g68171ex10-12.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Water Supply Agreement dated December 18, 2000 between Consolidated Water Co. Ltd. and South Bimini International Ltd. (incorporated herein by reference to Exhibit 10.12 filed as a part of our Form 10-K for the fiscal year ended December 31, 2000, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.3.1*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014404003858/g88198exv10w18.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Employment contract dated December 5, 2003 between Frederick McTaggart and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.18 filed as a part of our Form 10-K for the fiscal year ended December 31, 2003, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.3.2*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014407008695/g09569exv10w2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Amendment of Engagement Agreement dated September 14, 2007 between Frederick W. McTaggart and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.2 to our Form 8-K filed September 19, 2007, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.3.3*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420409047813/v160096_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Third Amendment of Engagement Agreement dated September 9, 2009 between Frederick W. McTaggart and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.1 to our Form 8-K filed September 10, 2009, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.4*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014408000319/g11421exv10w1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Engagement Agreement dated January 15, 2008 between David Sasnett and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.1 filed as part of our Form 8-K filed January 22, 2008, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.5.1*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014409002283/g18050exv10w11.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Employment contract dated January 14, 2008 between Ramjeet Jerrybandan and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.11 filed as part of our Form 10-K for the fiscal year ended December 31, 2008, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.5.2*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420417018862/v463387_ex10-2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">First Amendment to Employment Contract dated March 29, 2017 between Ramjeet Jerrybandan and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.2 filed as part of our Form 8-K filed April 4,2017, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.6</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Specimen Service Agreement between Cayman Water Company Limited and consumers (incorporated herein by reference to the exhibit filed as part of our Registration Statement on Form F-1 dated March 26, 1996)</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.7*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014400005337/0000950144-00-005337-index.html"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Summary Share Grant Plan for Directors (incorporated herein by reference to Exhibit 10.24 filed as part of our Registration Statement on Form F-2 dated May 17, 2000, Commission File No. 333-35356)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.8*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014402003099/g75127ex10-26.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Employee Share Option Plan (incorporated herein by reference to Exhibit 10.26 filed as a part of our Form 10-K for the fiscal year ended December 31, 2001, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.9*</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014408008414/g16491exv10w1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">2008 Equity Incentive Plan (incorporated by reference to Exhibit 10.1 filled as part of our Form 10-Q for the fiscal quarter ended September 30, 2008, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.10**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex10d10.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Water Supply Agreement dated March 5, 2018 between Cayman Water Company Limited and Cayman Shores Development Ltd.</span></a> &#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.11</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000095014402003099/g75127ex10-52.txt"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Lease dated December 10, 2001 between Cayman Hotel and Golf Inc. and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.52 filed as a part of our Form 10-K for the fiscal year ended December 31, 2001, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.12.1&#8224;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420411006075/v210070_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Form of Agreement for Desalinated Water Supply dated May 2005 among Water and Sewerage Corporation, Consolidated Water Co. Ltd. and Consolidated Water (Bahamas) Limited (incorporated herein by reference to Exhibit 10.1 filed as a part of our Form 8-K filed February 4, 2011, File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr></table></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">84</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.0978775%;padding-left:0pt;padding-right:0pt;width:100.19%;"><tr style="height:1pt;"><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th></tr><tr><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Number</b></p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Exhibit Description</b></p></th></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.12.2&#8224;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420411006075/v210070_ex10-2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Letter of Acceptance dated January 25, 2011 (effective January 31, 2011) between Water and Sewerage Corporation and Consolidated Water Co. Ltd. (incorporated herein by reference to Exhibit 10.2 filed as a part of our Form 8-K filed February 4, 2011, File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.12.3&#8224;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420411006075/v210070_ex10-3.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Proposal letter dated December 8, 2010 addressed to the Water and Sewerage Corporation (incorporated herein by reference to Exhibit 10.3 filed as a part of our Form 8-K filed February 4, 2011, File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.13.1&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-32x1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">N.S.C. Agua S.A. de C.V. agreement for the purchase of 12 hectares of land dated May 16, 2013 (incorporated herein by reference to Exhibit 10.32.1 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.13.2&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-32x2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Appendix to N.S.C. Agua S.A. de C.V. agreement for the purchase of 12 hectares of land dated May 16, 2013 (incorporated herein by reference to Exhibit 10.32.2 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a>&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.13.3</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-32x3.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Exhibit Index to N.S.C. Agua S.A. de C.V. agreement for the purchase of 12 hectares of land dated May 16, 2013 (incorporated herein by reference to Exhibit 10.32.3 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.13.4</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420414016217/v370654_ex10-32x4.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Exhibits to N.S.C. Agua S.A. de C.V. agreement for the purchase of 12 hectares of land dated May 16, 2013 (incorporated herein by reference to Exhibit 10.32.4 filed as a part of our Form 10-K for the fiscal year ended December 31, 2013, Commission File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.14</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000114420417054137/tv476946_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Public-Private Partnership Contract dated August 22, 2016 among Aguas de Rosarito S.A.P.I. de C.V., the State Water Commission of Baja California, the Government of Baja California represented by the Secretary of Planning and Finance, and the Public Utilities Commission of Tijuana. (incorporated herein by reference to Exhibit 10.1 to be filed as a part of our Amendment No. 1 to Form 8-K filed August 26, 2016, File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">10.15</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="https://www.sec.gov/Archives/edgar/data/928340/000110465920081259/tm2024078d1_ex10-1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Letter dated June 29, 2020 from the Director General of the Comisi&#243;n Estatal del Agua de Baja California to Aguas de Rosarito, S.A.P.I. de C.V. (incorporated herein by reference to Exhibit 10.1 filed as a part of our Form 8-K filed July 6, 2020, File No. 0-25248)</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">21.1**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex21d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Subsidiaries of the Registrant</span></a>&#8239;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">23.1**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex23d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Consent of Marcum LLP - Consolidated Water Co. Ltd.</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">31.1**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex31d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Certification by the Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">31.2**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex31d2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Certification by the Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">32.1**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex32d1.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Certification by the Chief Executive Officer pursuant to 18 U.S.C. Section 1350, Section 906 of the Sarbanes-Oxley Act of 2002</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">32.2**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><a style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;" href="cwco-20211231xex32d2.htm"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Certification by the Chief Financial Officer pursuant to 18 U.S.C. Section 1350, Section 906 of the Sarbanes-Oxley Act of 2002</span></a></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.INS**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL Instance Document <span style="background:#ffffff;">- The instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.SCH**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL <span style="background:#ffffff;">Taxonomy Extension Schema</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.CAL**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL <span style="background:#ffffff;">Taxonomy Extension Calculation Linkbase</span></p></td></tr></table></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">85</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;min-height:11.5pt;"><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:-0.0978775%;padding-left:0pt;padding-right:0pt;width:100.19%;"><tr style="height:1pt;"><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></th></tr><tr><th style="font-weight:normal;text-align:left;vertical-align:top;width:9.76%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Number</b></p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></th><th style="font-weight:normal;text-align:left;vertical-align:top;width:88.17%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Exhibit Description</b></p></th></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.DEF**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL <span style="background:#ffffff;">Taxonomy Extension Definition Document</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.LAB**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL <span style="background:#ffffff;">Taxonomy Extension Label Linkbase</span></p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:9.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">101.PRE**</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">104**</p></td><td style="vertical-align:top;width:2.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:88.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">XBRL <span style="background:#ffffff;">Taxonomy Extension Presentation Linkbase</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;background:#ffffff;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="background:#ffffff;">Cover Page Interactive Data File - The cover page interactive data file does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;margin-top:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:7.5pt;text-indent:-7.5pt;margin:0pt;">*&#160;&#160;&#160;Indicates a management contract or compensatory plan.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:14.25pt;text-indent:-14.25pt;margin:0pt;">**&#160;Filed herewith.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#8224;&#160;&#160;&#160;Portions of these Exhibits have been omitted pursuant to a request for confidential treatment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">86</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;page-break-after:always;width:79.3%;border:0;margin:30pt 10.35% 30pt 10.35%;"></div><div style="max-width:100%;padding-left:10.35%;padding-right:10.35%;position:relative;"><div style="margin-top:21.6pt;min-height:41.75pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 30pt 0pt;"><a href="#TOC"><span style="font-style:normal;font-weight:normal;">Table of Contents</span></a></p></div><div style="clear:both;max-width:100%;position:relative;"><a id="_0f83c9ce_502a_4f5b_8f2c_1592bc001bdb"></a><a id="SIGNATURES_660710"></a><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">SIGNATURES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Pursuant to the requirements of Section&#160;13 or 15(d)&#160;of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:3.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:46.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td colspan="2" style="vertical-align:top;width:50.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">CONSOLIDATED WATER CO. LTD.</b></p></td></tr><tr><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:3.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:3.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">By:&#160;</p></td><td style="vertical-align:top;width:46.74%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">/s/ Wilmer F. Pergande</p></td></tr><tr><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:3.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Wilmer F. Pergande</p></td></tr><tr><td style="vertical-align:top;width:49.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:3.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:46.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Chairman of the Board of Directors</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Dated: March&#160;29, 2022</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"></div></div></td></tr><tr><td colspan="2" style="vertical-align:bottom;width:37.95%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Signature</b></p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Title</b></p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Date</b></p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Wilmer&#160;F.&#160;Pergande</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Chairman&#160;of&#160;the&#160;Board&#160;of&#160;Directors</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Wilmer&#160;F.&#160;Pergande</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Frederick&#160;W.&#160;McTaggart</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director,&#160;Chief&#160;Executive&#160;Officer&#160;and&#160;President</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Frederick&#160;W.&#160;McTaggart</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal&#160;Executive&#160;Officer)</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;David&#160;W.&#160;Sasnett</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Executive&#160;Vice&#160;President&#160;&amp;&#160;Chief&#160;Financial&#160;Officer</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">David&#160;W.&#160;Sasnett</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal&#160;Financial&#160;and&#160;Accounting&#160;Officer)</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Linda Beidler-D&#8217;Aguilar</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Linda Beidler-D&#8217;Aguilar</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Brian&#160;E.&#160;Butler</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Brian&#160;E.&#160;Butler</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Carson&#160;K.&#160;Ebanks</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Carson&#160;K.&#160;Ebanks</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Richard&#160;L.&#160;Finlay</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Richard&#160;L.&#160;Finlay</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Clarence&#160;B.&#160;Flowers,&#160;Jr.</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Clarence&#160;B.&#160;Flowers,&#160;Jr.</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Leonard&#160;J.&#160;Sokolow</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Leonard&#160;J.&#160;Sokolow</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr style="height:4pt;"><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:bottom;width:34.97%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/&#160;Raymond&#160;Whittaker</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:43.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Director</p></td><td style="vertical-align:bottom;width:1.03%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:15.99%;border-bottom:1.0pt solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March&#160;29, 2022</p></td></tr><tr><td style="vertical-align:bottom;width:2.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:34.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raymond&#160;Whittaker</p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:43.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td><td style="vertical-align:bottom;width:15.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;">&#160;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="color:#70ad47;font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="color:#70ad47;font-size:12pt;visibility:hidden;">&#8203;</span></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">87</p></div></div>
<div style="background-color:#000000;clear:both;height:2pt;margin-left:10.35%;margin-right:10.35%;margin-top:30pt;page-break-after:avoid;width:79.3%;border:0;"></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-4.1
<SEQUENCE>2
<FILENAME>cwco-20211231xex4d1.htm
<DESCRIPTION>EX-4.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:51:59 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><b style="font-weight:bold;">Exhibit 4.1</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CONSOLIDATED WATER CO. LTD.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">DESCRIPTION OF SECURITIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><i style="font-style:italic;">The following description of the terms of our securities is not complete and is qualified in its entirety by reference to our Memorandum of Association, as amended (the &#8220;Memorandum of Association&#8221;), and our Articles of Association, as amended (the &#8220;Articles of Association&#8221;), both of which are exhibits to our Annual Reports on Form 10-K.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Under our Memorandum of Association and Articles of Association we are authorized to issue 25,000,000&#160;shares of capital stock, consisting of 24,655,000 ordinary shares, par value CI$0.50 (approximately US$0.60) per share, 145,000 Class&#160;B ordinary shares, par value CI$0.50 (approximately US$0.60) per share, and 200,000 redeemable preference shares, par value CI$0.50 (approximately US$0.60) per share.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The ordinary shares (common stock) are listed on the Nasdaq Global Select Market under the symbol &#8220;CWCO.&#8221; All outstanding ordinary shares are validly issued, fully paid, and nonassessable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Ordinary Shares</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Voting Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Holders of ordinary shares may cast one vote for each share held of record at all shareholder meetings. All voting is non-cumulative. Holders of more than 50% of the outstanding shares present and voting at an annual meeting at which a quorum is present are able to elect all of our directors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Dividends and Liquidation Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Holders of ordinary shares are entitled to receive ratably dividends, if any, distributed out of our accumulated profits. Subject to the preferential rights of holders of the redeemable preference shares, upon liquidation, all holders of ordinary shares are entitled to participate pro rata in our assets which are available for distribution.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Other Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Holders of ordinary shares do not have preemptive rights or rights to convert their ordinary shares into any other securities, and our common stock is not subject to any redemption or sinking fund provisions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Redeemable Preference Shares</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Voting</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Holders of redeemable preference shares may cast one vote for each share held of record at all shareholder meetings. All voting is on a non-cumulative basis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Dividends and Liquidation Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Upon the event of our liquidation, the redeemable preference shares rank in preference to the ordinary shares with respect to the repayment of the par value of redeemable preference shares plus any premium paid or credited on the purchase of the shares.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Other Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Under our employee share incentive plan, we may redeem any redeemable preference shares issued to an employee under certain circumstances. The ordinary shares and the redeemable preference shares rank equally in all other respects.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Class&#160;B Ordinary Shares</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-style:italic;font-weight:bold;">Special Rights</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-style:italic;font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Holders of Class&#160;B ordinary shares are entitled to the same dividends paid on Class A ordinary shares and redeemable preference shares, and we cannot pay a dividend on the Class A ordinary shares without paying the same dividend on the Class&#160;B ordinary shares, and vice versa.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We cannot redeem the Class&#160;B ordinary shares, and the holders of the Class&#160;B ordinary shares are not entitled to any repayments of capital upon our dissolution.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">If we enter into a transaction in which Class A ordinary shares are exchanged for securities or other consideration of another company, then the Class&#160;B ordinary shares will also be exchanged pursuant to a formula. The Class&#160;B ordinary shares and the Class A ordinary shares rank equally in all other respects.</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.10
<SEQUENCE>3
<FILENAME>cwco-20211231xex10d10.htm
<DESCRIPTION>EX-10.10
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:03 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><b style="font-weight:bold;">Exhibit 10.10</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><font style="color:#1a1a1a;font-style:italic;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="border-bottom-style:none;font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:5pt;text-align:center;margin:0pt;"><b style="font-size:14.5pt;font-weight:bold;">WATER SUPPLY AGREEMENT</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:1pt;text-align:center;border-bottom:1.0pt solid #000000;margin:0pt 0pt 10pt 0pt;"><font style="font-size:5pt;font-weight:bold;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:103.7pt;text-align:justify;text-indent:-103.7pt;margin:0pt;"><b style="font-weight:bold;">THIS AGREEMENT </b>is made this 5<sup style="font-size:7.5pt;vertical-align:top;">th </sup>day of March<b style="font-weight:bold;">, </b>2018,</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:72pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">BETWEEN:</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">CAYMAN WATER COMPANY LIMITED, </b>a Cayman Islands company whose registered office is situated at Fourth Floor, Windward Three, Regatta Business Park, West Bay Road, PO Box 1114, George Town, Grand Cayman, KY1-1102, Cayman Islands (&quot;CWC&quot;).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:103.65pt;text-align:justify;text-indent:-103.65pt;margin:0pt 0pt 0pt 6.4pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:72pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">AND:</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">CAYMAN SHORES DEVELOPMENT LTD. </b>a company duly incorporated under the laws of the Cayman Islands whose registered office is situated at 10, Market Street, Suite #772, Camana Bay, Grand Cayman, KY1-9006, Cayman Islands (the &quot;Customer&quot;).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:103.8pt;text-align:justify;text-indent:-103.8pt;margin:0pt 0pt 0pt 6.39pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">WHEREAS:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6.45pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">(A)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Cayman Hotel &amp; Golf Inc. and Consolidated Water Co. Ltd. (&quot;Consolidated Water&quot;) entered into an agreement for the supply of potable water dated 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>February, 2002 (the &quot;2002 Agreement &quot;).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">(B)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Customer is the successor in title to Cayman Hotel &amp; Golf Inc. with respect to the properties referred to in the 2002 Agreement which was subsequently amended on or about 16<sup style="font-size:7.5pt;vertical-align:top;">th </sup>August 2016 by Consolidated Water and the Customer (the 2002 Agreement, as amended, being the &quot;Old Agreement&quot;).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">(C)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">CWC is the wholly-owned subsidiary of Consolidated Water. Its licence to supply potable water within the Licence Area shall expire on 31<sup style="font-size:7.5pt;vertical-align:top;">st </sup>January, 2018 and is subject to negotiations for renewal with the Utility Regulation and Competition Office.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">(D)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">Consolidated Water and the Customer desire to terminate the Old Agreement (&quot;Termination&quot;).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">(E)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Customer wishes to obtain a supply of potable water in specified volume by pipe to the properties set out in the SCHEDULE including the West Bay nursery irrigation, the North Sound Club golf course irrigation, the West Indian Club irrigation, the Camana Bay chiller plant process water, the Arboretum irrigation and the Camana Bay fire cistern and irrigation (collectively, the &quot;Covered Premises&quot;), and CWC has agreed to supply the water on the terms set out in this Agreement.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><b style="font-weight:bold;">(F)</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The combined effect of the Termination and this Agreement is that this Agreement supersedes and replaces the Old Agreement with effect from the Commencement Date.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:34.4pt;text-indent:-34.4pt;margin:0pt 0pt 0pt 6.64pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="display:none;line-height:0pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:0pt;visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">IT IS HEREBY AGREED </b>as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">1.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">SUPPLY OF WATER</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 25.1pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Subject to sub-clause (4), CWC will supply the Customer from the Commencement Date until the expiry of the Term on the terms and conditions set out in this Agreement potable water to the quality standard required by its Licence at the meter or meters referred to in Clause 2(3) at the typical and customary pressure provided by CWC water mains but no less than 30 pounds per square inch.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Volume of water supplied will be a minimum of 170,000 U.S. gallons per day. The maximum volumes to be supplied will be the amount from time to time agreed by CWC who must use its best endeavours to supply the Customer&#39;s demands in full.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(3)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Notwithstanding that CWC has connected any water supply to a hydrant or sprinkler system on the Covered Premises, it is expressly agreed that CWC will be under no obligation to provide water for firefighting purposes or to ensure that the Water Tank contains water at any time whatever or under any circumstances, and will only supply water for those purposes if it is able to do so and, save in the case of wilful default where it is able to do so, will not be liable for any damage whatever caused by fire or any related cause. This clause is without prejudice to Clause 1(5) below.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(4)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">For the purposes of this Agreement, the water supplied to the Customer is deemed to be the amount of water shown by:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><font style="font-size:10.5pt;">(a)</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">the meter measuring the amount of water passing through the Fire Pump; plus</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><font style="font-size:10.5pt;">(b)</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">the meter measuring the amount of water flowing into the Irrigation Tank; plus</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><font style="font-size:10.5pt;">(c)</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">the designated meters measuring the water flowing into the Covered Premises.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(5)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Notwithstanding Clause 1(3) above, CWC must give not less than twenty-four (24) hours&#39; notice to the Customer of any occasion on which to its knowledge the Water Tank will for any reason contain less than 250,000 U.S. gallons of water and if in circumstances unforeseen by CWC, the water in the Water Tank is, or within twenty<font style="font-family:'Arial','Helvetica','sans-serif';">&#173;</font> four (24) hours will be, reduced below 250,000 U.S. gallons, CWC must notify the Customer immediately it becomes aware &#160;of &#160;that fact.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">2.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">PAYMENT</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">From the Commencement Date until the end of the Term, the Customer will, subject to sub-clause (6) and clause 4, pay a price per 1,000 U.S. gallons equal to the total of the following:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">for the Required Monthly Gallonage in any calendar month, US$11.37 subject to adjustment on 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>January, 2017 and on each January 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>thereafter in accordance with sub-clause (2);</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.8pt;text-indent:-25.8pt;margin:0pt 0pt 0pt 51.1pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">2</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(b)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">for any volume supplied in excess of the Required Monthly Gallonage in any calendar month, the price charged to commercial consumers from time to time within that part of the Licence Area in which the Covered Premises are situated; and</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(c)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">the Energy Adjustment Factor from time to time.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">On each 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>January commencing 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>January, 2017 the Consumption Charge per 1,000 U.S. gallons of the Required Monthly Gallonage in that year will be adjusted to the figure obtained by reference to the following formula:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div style="padding-left:72pt;" align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:26.65%;"><tr style="height:1pt;"><td style="vertical-align:top;width:43.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:12.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:43.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:43.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">7.24 x USPPIL</font></p></td><td style="vertical-align:top;width:12.5%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:center;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">+</font></p></td><td style="vertical-align:top;width:43.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">4.13 x CICPIL</font></p></td></tr><tr><td style="vertical-align:top;width:43.76%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">USPP100</font></p></td><td style="vertical-align:top;width:12.5%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:43.73%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">CICP100</font></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:18pt;margin:0pt 0pt 0pt 18pt;">For the purposes of this clause:-</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0.2pt;margin:0pt 0pt 0pt 35pt;">USPPIL is the United States Producer Price Index for Industrial Commodities at the preceding September 30<sup style="font-size:7.5pt;vertical-align:top;">th</sup> and USPP100 is that index at September 30, 2015, and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:0.1pt;text-align:justify;text-indent:-0.1pt;margin:0pt 0pt 0pt 35.15pt;">CICPIL is the Cayman Islands Consumer Price Index at the preceding September 30<sup style="font-size:7.5pt;vertical-align:top;">th </sup>and CICP100 is that index at September 30, 2015.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:0.05pt;text-align:justify;text-indent:-0.05pt;margin:0pt 0pt 0pt 35.25pt;">BUT if the Cayman Islands Government does not produce a Consumer Price Index at any relevant date, the United States Government Consumer Price Index for that date and September 30, 2015 must be used.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(3)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">CWC must furnish, fix and maintain in good repair the designated premises meters and the meters measuring the volumes of water flowing into the Irrigation Tank and passing through the Fire Pump and into the Covered Premises for determining the quantity of water used by the Customer. &#160;The Customer must pay the rental specified in paragraph (b) for the use of the designated premises meters measuring the volumes of water which will remain the property of CWC. &#160;If any meter is damaged by the Customer, its servants, agents or invitees, CWC will repair or replace the meter but at the Customer&#39;s expense. The Customer is liable for the cost of all water passing through (i) the designated meters measuring the water flowing into the Covered Premises, and (ii) the meters measuring the volumes of water flowing into the Irrigation Tank and passing through the Fire Pump unless any meter is found to be defective after a complaint by the Customer to CWC. If a meter is found to be defective, CWC will charge the Customer for water used based on the average water consumption of the previous twelve (12) months when the defective meter was working, pro rata for the period when the meter was not recording correctly or not recording at all.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">3</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">Meter rates are as follows:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:26.15pt;text-indent:-26.15pt;margin:0pt 0pt 0pt 35.4pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;" align="center"><tr style="height:1pt;"><td style="vertical-align:bottom;width:25.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">&#160;&#160;&#160;&#160;</font></p></td><td style="vertical-align:top;width:15.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;">Monthly&#160;Rental</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;border-bottom:1px solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:top;width:19.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:center;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;">Connection&#160;Fee</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;border-bottom:1px solid transparent;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:top;width:31.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:23.05pt;text-align:center;text-indent:-23.05pt;margin:0pt 0pt 0pt 18.95pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;">Reconnection&#160;Fee</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">20 mm (3/4&#8221;)</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:15.62%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 3.50</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:19.73%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 80.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:31.89%;border-top:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 50.00</font></p></td></tr><tr><td style="vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">25 mm (1&#8221;)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 5.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$120.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 75.00</font></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">38 mm (1 &#189;&#8221;)</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$ 7.50</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$175.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$110.00</font></p></td></tr><tr><td style="vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">50 mm (2&quot;)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$10.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$240.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$150.00</font></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">75 mm (3&quot;)</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$15.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$360.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$225.00</font></p></td></tr><tr><td style="vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">100 mm (4&quot;)</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$25.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$560.00</font></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$300.00</font></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:top;width:25.55%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;padding-left:7.2pt;text-indent:-7.2pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">150 mm (6&quot;)</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:15.62%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$40.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:19.73%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$800.00</font></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.39%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="background-color:#cceeff;vertical-align:top;width:31.89%;margin:0pt;padding:0pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;text-align:right;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Cl$350.00</font></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(4)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">CWC must invoice the Customer for the Monthly Charge for the previous calendar month and any unpaid balance on the account (including interest on any late payments at the rate set out below) and the Customer must pay each invoice within twenty-one (21) days failing which the Customer must pay CWC interest at the rate of 1 1/2 % per month calculated on a daily basis from the due date to the date of payment, which CWC may charge whether or not it continues to supply water. If any invoice remains unpaid for 30 days from its date then CWC may cease supplying water until the Customer pays all invoices up to date.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(5)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The water supply service must be used only by the Customer, any registered proprietor for the time being of the Covered Premises, or in each case such person&#39;s tenants or guests and must not be re-sold or otherwise supplied to third parties, either within or outside the boundaries of the Covered Premises.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">3.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">SECURITY DEPOSIT</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0.7pt;margin:0pt 0pt 0pt 18pt;">The Customer must pay CWC on the date of this Agreement, a deposit of US$75,000.00 which CWC must hold on account of the payment of the Monthly Charge during the last month of this Agreement. So long as the Customer has paid all charges (including any interest on late payments) due under this Agreement during the previous year, CWC must, on every anniversary of the payment of the deposit, compute and credit the Customer against the following month&#39;s bill for water under this Agreement, interest on that deposit at the average rate paid by Cayman National Bank during the previous year on fixed deposits of US$75,000.00 for periods of one year. If at the end of this Agreement any portion of the deposit remains unused, CWC must immediately refund it to the Customer without interest.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:17.15pt;text-indent:-17.15pt;margin:0pt 0pt 0pt 5.89pt;"><font style="display:inline-block;text-indent:0pt;width:12.1pt;"><b style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:bold;text-align:left;">4.</b></font><b style="font-weight:bold;">MINIMUM WATER QUANTITY</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Customer must pay the Consumption Charge for at least 170,000 U.S. gallons of water per day whether or not it is used if CWC was able to supply that quantity on the particular day. If CWC could not have supplied that quantity of water on any day, the Customer need only pay for the quantity which could have been supplied.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Notwithstanding sub-clause (1), if in any month after May, 2016 the Customer does not use the minimum water quantity for which he has paid the Consumption Charge, CWC must give credit in succeeding months for the Consumption Charge paid in respect of the unused water against the Monthly Charge for water used in those months in excess of the minimum quantity BUT except in respect of credits earned after 31<sup style="font-size:7.5pt;vertical-align:top;">st </sup>May, 2026, which will expire on the expiration of this Agreement, unused credits earned in each 24 month period which commences 1<sup style="font-size:7.5pt;vertical-align:top;">st</sup> May during the Term (the first of which will commence 1<sup style="font-size:7.5pt;vertical-align:top;">st</sup> May, 2016) will expire at the end of each such 24 month period.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.85pt;text-indent:-25.85pt;margin:0pt 0pt 0pt 23.1pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">4</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">5.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">FORCE MAJEURE</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding anything to the contrary in this Agreement (but subject to the remainder of this clause), the Customer &#39;s rights against CWC and any corresponding obligations of the Customer will be suspended during any period in which CWC cannot perform its obligations under this Agreement because of <i style="font-style:italic;">force majeure </i>which includes, without limitation, hurricane, fire, flood or other acts of God, unavoidable accident, explosion, war, strike, lockout, labour trouble, expropriation by Governmental authority, regulation, orders or requests of Governmental agencies or inability by the exercise of reasonable diligence to obtain supplies, materials or power. If CWC becomes aware of circumstances of <i style="font-style:italic;">force majeure </i>which give rise to or which are likely to give rise to any failure or delay to perform its obligations hereunder, it shall forthwith notify the Customer and shall inform the Customer of the period during which it is estimated that such failure or delay shall continue. If CWC or the Customer reasonably estimates that the period of failure or delay due to <i style="font-style:italic;">force majeure </i>shall exceed three months (or, despite a shorter estimate, the period of failure or delay in fact exceeds three months), then the Customer shall be entitled to terminate this Agreement under clause 10(1)(b) or 10(3) below. For the avoidance of doubt, this clause 5 shall not apply to the Customer&#39;s right to terminate under clause 10(1)(a) or Clause 10(2), which shall be exercisable at any time in accordance with that clause.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:0.1pt;margin:0pt 0pt 0pt 5.9pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">6.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ASSIGNMENT</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Customer may not assign the benefit of this Agreement without first obtaining CWC&#39;s consent (such consent not to be unreasonably withheld or delayed) BUT:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">may without that consent and subject to it remaining fully liable to CWC in all respects assign this Agreement to</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:66.25pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:36pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><font style="font-family:'Symbol';">&#183;</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">any wholly owned subsidiary company or any company which owns all of the Customer&#39;s shares; or</p></td></tr></table><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:66.25pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:36pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><font style="font-family:'Symbol';">&#183;</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">any successor to the Customer by consolidation, merger or other corporate action.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(b)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">in every case, each assignee of the Customer must assume and will be taken to have assumed the obligations under this Agreement and will be liable in addition to the Customer, from the date of the assignment, to comply with all the Customer&#39;s obligations in it.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 75.2pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 54pt;">The Customer must give notice to ewe within one month after any transaction under this clause, supplying a copy of the instrument.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:57.6pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><font style="font-size:10.5pt;">(1)</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">On CWC&#39;s giving consent to any assignment and the assignee agreeing to accept all of the Customer&#39;s obligations under this Agreement, the Customer will be released from all those obligations as of the date of CWC&#39;s consent, but without prejudice to CWC&#39;s right of action in respect of any antecedent breaches by the Customer.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 100.25pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:57.6pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;"><font style="font-size:10.5pt;">(2)</font></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">CWC agrees that if at any time CWC assigns or transfers the Licence or the Licence is granted to another company in which CWC has an interest, it will assign this Agreement to the assignee, transferee or grantee (as the case may be) of the Licence.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:33.95pt;text-indent:-33.95pt;margin:0pt 0pt 0pt 66.3pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">5</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">7.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">ADD OR REMOVE PARCELS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">CWC and the Customer agree to use their reasonable endeavours to agree in good faith such modifications as may reasonably necessary to add to or remove any parcels that benefit from this Agreement from time to time as soon as reasonably practicable following CWC&#39;s receipt of written notice from the Customer.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 22.85pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">8.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">SUBDIVIDED OR COMBINED PARCELS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6.05pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">The parcels listed in the Schedule may be subdivided or combined in future and in which case this Agreement shall continue to apply to such subdivided or combined parcels without further amendment to this Agreement required.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">9.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">THIRD PARTY RIGHTS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The parties agree that any registered proprietor for the time being of the parcels contained in the Schedule (including any subdivision or combination thereof) shall have the right to enforce and enjoy the benefit of any term of this Agreement in so far as they relate to that parcel or those parcels in accordance with Contracts (Rights of Third Parties) Law 2014 (as amended from time to time) (the &quot;CRTP Law&quot;)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Notwithstanding the CRTP Law, the consent or notice to the registered proprietor of any parcel referred to in (1) above shall not be required for any termination, rescission or agreement to any variation, waiver, assignment, novation, release or settlement under this Agreement, including (but not limited to) any such amendment (however described) having the effect of removing such parcel from the scope of this Agreement.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">10.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">TERMINATION</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.85pt;text-align:justify;text-indent:-25.85pt;margin:0pt 0pt 0pt 23.3pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">This Agreement may, without prejudice to any other rights which the terminating party may have against the others, be terminated by either of CWC or the Customer before the end of the Term if the other of those parties:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">does not comply with any of its representations, warranties or agreements set out in this Agreement and does not remedy the breach (if capable of remedy) within 30 days of service on it of notice so to do; or</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(b)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">is prohibited from performing its obligations under this Agreement as a result of any applicable law or regulation.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">The Customer may terminate this Agreement at any time after the Lease has been terminated by the Customer pursuant to the termination provisions contained in the Lease.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 49.15pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(3)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">Without prejudice to the generality of clause 10(1)(b) above, either the Customer or CWC may terminate this Agreement on notice at any time upon the expiry, suspension or revocation of the Licence, or at any time CWC is unable or unwilling to provide the services at the rates, or otherwise comply with its obligations, under this Agreement due to any term of the Licence or due to any required approval from the Utility Regulation and Competition Office or other regulatory or Government entity not having been obtained.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.7pt;text-align:justify;text-indent:-25.7pt;margin:0pt 0pt 0pt 23.45pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">6</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">11.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">NOTICES</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">A notice or other communication under or in connection with this Agreement shall be in writing and shall be delivered personally or sent by telefax, as follows:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">if to Consolidated Water or CWCO, to:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 108pt;">Fourth Floor, Windward Three, Regatta Business Park, West Bay<br>Road, PO Box 1114 George Town, Grand Cayman, KY1-1102<br>Cayman Islands<br>Telefax: (345) 945-2957</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(b)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">if to the Customer, to:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 108pt;">10, Market Street,<br>Suite #772, Camana Bay<br>Grand Cayman, KY1-9006<br>Cayman Islands<br>FAO Richard Sykes</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:0.7pt;margin:0pt 0pt 0pt 79.55pt;">or to another person, address or telefax number specified by a party by written notice to the others.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">In the absence of evidence of earlier receipt, a notice or other communication is deemed given:-</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(a)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">if delivered personally, when left at the address referred to in Clause 11(1).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:36pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(b)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">if sent by telefax, on completion of its transmission or, if sent on a day which is not a working day at the recipient&#39;s address, at 9:00 a.m. (recipient&#39;s time) on the next succeeding working day at the recipient&#39;s address.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">12.  ENTIRE AGREEMENT, BINDING EFFECT AND MODIFICATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">This Agreement is binding on the parties and their respective successors and assigns and may be amended or modified only by a further written agreement signed by CWC and the Customer. This Agreement sets out the entire agreement of the parties with respect to its subject matter and supersedes all previous agreements and understandings whether oral or written relating to it.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">13.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">NO WAIVER OF TERMS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">Unless there is a written agreement to the contrary, no neglect, omission or forbearance on CWC&#39;s part to take advantage of or enforce any right or remedy arising out of any breach or non-observance of any of the terms and conditions contained or implied in this Agreement will be deemed to be or operate as a general waiver of that term or condition or the right to enforce or take advantage of it in respect of any breach or non-observance of it either original or recurring.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:0.05pt;text-align:justify;text-indent:-0.05pt;margin:0pt 0pt 0pt 22.65pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">14.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">DEFINITIONS</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 18pt;">For the purposes of this Agreement:-</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(1)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Commencement Date&quot; means the 1<sup style="font-size:7.5pt;vertical-align:top;">st </sup>day of May, 2016.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(2)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Consumption Charge&quot; means the charge in sub-clause 2(1)(a) subject to adjustment in accordance with sub-clause 2(2).</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(3)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Energy Adjustment Factor&quot; means the Energy Adjustment Factor as defined in the Licence.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">7</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(4)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Fire Pump&quot; means the Customer&#39;s fire pump connected to the Water Tank.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(5)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Irrigation Tank&quot; means the Customer&#39;s irrigation tank marked as such on the Plan.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(6)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Law&quot; means the Water (Production and Supply) Law, 2011 which expression includes any amendment, consolidation or re-enactment of it.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(7)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">&quot;the Lease&quot; means the lease under the Registered Land Law of part of the land comprised in Registration Section West Bay Beach South Block 12D Parcel 108, registered at the Cayman Islands Land Registry as West Bay Beach South Block 12D Parcel 108/7, the current parties to which (whether by operation of law, assignment or novation or otherwise) are the Customer as landlord and CWC as tenant.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(8)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">&quot;the Licence&quot; means the licence granted to CWC under the Law (which at the date of this Agreement is expressed to expire on 31<sup style="font-size:7.5pt;vertical-align:top;">st </sup>January, 2018) and includes any new licence that may be granted to CWC by the Utility Regulation and Competition Office.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(9)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Licence Area&quot; means the area for which CWC has been granted the Licence under the Law.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(10)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">&quot;the Monthly Charge&quot; means the total of the Consumption Charge and the Energy Adjustment Factor in respect of each month.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">(11)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;">&quot;the Plan&quot; means the plan attached to this Agreement marked &#39;Property Plan&#39;.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.2pt;text-indent:-25.2pt;margin:0pt 0pt 0pt 18pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:18pt;text-align:justify;text-indent:-18pt;margin:0pt 0pt 0pt 18pt;">(12 ) &quot;the Required Monthly Gallonage&quot; means 170,000 multiplied by the number of days in the relevant calendar month.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(13)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">&quot;the Term&quot; means the period of ten (10) years or until the earlier expiry of the Licence or any renewal of it, commencing on the Commencement Date.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 48.35pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="width:18pt;padding:0pt;"></td><td style="vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">(14)</p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;text-align:justify;">&quot;the Water Tank&quot; means the water tank owned by CWC located on the Property and marked as such on the Plan.</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:25.5pt;text-indent:-25.5pt;margin:0pt 0pt 0pt 22.84pt;"><font style="margin-left:0pt;visibility:hidden;">&#8203;</font></p><table border="0" cellpadding="0" cellspacing="0"><tr><td style="vertical-align:text-top;white-space:nowrap;width:17.3pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">15.</b></p></td><td style="padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;"><b style="font-weight:bold;">APPLICABLE LAW AND FORUM</b></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 18pt;">This Agreement is governed by and must be construed in accordance with the laws of the Cayman Islands and the parties submit to the non-exclusive jurisdiction of the Cayman Islands Courts.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">8</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.3pt 0pt;"><b style="font-size:12pt;font-weight:bold;text-decoration:underline;text-decoration-color:#000000;">THE SCHEDULE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">THE HOTEL</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach South</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">12C</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">27</p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bav Beach South</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">12D</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">26 and 108</p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach South</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">12E</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">88</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.1pt 0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">THE WEST BAY NURSERY</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach North East</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">9A</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">103 and 154, 155 and 167</p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bav Beach North East</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;">5C</font></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">330</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.44pt 0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">THE NORTH SOUND CLUB GOLF COURSE</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach North </p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">17A</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">262</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.44pt 0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">THE ARBORETUM</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:33.31%;margin:0pt;padding:0pt 0.5pt 0pt 0.5pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:33.34%;margin:0pt;padding:0pt 0.5pt 0pt 0.5pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:33.34%;margin:0pt;padding:0pt 0.5pt 0pt 0.5pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:1pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td style="vertical-align:top;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.31%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach South </p></td><td style="vertical-align:top;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">13B</p></td><td style="vertical-align:top;width:33.34%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.15pt 0pt;">49, 51, 225 REM1, 227 and 228</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.44pt 0pt;"><b style="font-weight:bold;">WEST INDIAN CLUB</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach South </p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">12E</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">17, 18 and 107</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.1pt 0pt;"><b style="font-weight:bold;">CAMANA BAY CHILLER PLANT</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0.5pt;padding-right:0.5pt;width:100%;" align="center"><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Registration Section</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Block</b></p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Parcel</b></p></td></tr><tr><td style="vertical-align:top;width:33.32%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Bay Beach South </p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">12D</p></td><td style="vertical-align:top;width:33.33%;border-bottom:1px solid #000000;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 0.25pt 0pt 0.25pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">95 and 101</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:11pt;visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">9</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"><i style="color:#1a1a1a;font-style:italic;">Execution version</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">IN WITNESS WHEREOF </b>this Agreement has been entered into the date first written above.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div align="left"><table style="border-collapse:collapse;font-size:16pt;height:max-content;width:100%;"><tr style="height:1pt;"><td colspan="2" style="vertical-align:top;width:48.79%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></div></div></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">EXECUTED by Cayman Water Company Limited in the presence of:</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">/s/ Patricia Olszewski</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">By:</font></p></td><td style="vertical-align:top;width:41.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">/s/ Clarence B. Flowers</font></p></td></tr><tr><td style="vertical-align:top;width:12%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Witness</font></p></td><td style="vertical-align:top;width:36.78%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Name:</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Patricia Olszewski</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Name:</font></p></td><td style="vertical-align:top;width:41.76%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Clarence B. Flowers</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Address</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Po Box 737</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Grand Cayman KY1-1303</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Office:</font></p></td><td style="vertical-align:top;width:41.76%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Director</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Occupation:</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Bookkeeper and Secretary</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:36.78%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">EXECUTED by the Customer in the presence of:</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td colspan="2" style="vertical-align:top;width:48.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">/s/ Gabrielle Wheaton</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">By:</font></p></td><td style="vertical-align:top;width:41.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">/s/ Jacqueline Claire Doak</font></p></td></tr><tr><td style="vertical-align:top;width:12%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Witness</font></p></td><td style="vertical-align:top;width:36.78%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Name:</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Gabrielle Wheaton</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Name:</font></p></td><td style="vertical-align:top;width:41.76%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Jacqueline Claire Doak</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Address</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">89 Nexus Way</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Camana Bay, Grand Cayman</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:7.25%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Office:</font></p></td><td style="vertical-align:top;width:41.76%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Director</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Occupation:</font></p></td><td style="vertical-align:top;width:36.78%;border-bottom:1px solid #000000;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;">Senior Executive Coordinator</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr><tr><td style="vertical-align:top;width:12%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:36.78%;border-top:1px solid #000000;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td style="vertical-align:top;width:2.18%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td><td colspan="2" style="vertical-align:top;width:49.01%;margin:0pt;padding:0pt 5.4pt 0pt 5.4pt;"><p style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:10pt;visibility:hidden;">&#8203;</font></p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="display:none;line-height:0pt;margin:0pt;"><font style="font-family:'Times New Roman','Times','serif';font-size:0pt;visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">10</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-bottom:30pt;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:always;width:88.24%;border-width:0;"><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0pt 9.35pt;"><img src="cwco-20211231xex10d10001.jpg" alt="Graphic" style="display:inline-block;height:671.35pt;left:0%;padding-bottom:0.65pt;position:relative;top:0pt;width:540pt;"></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>4
<FILENAME>cwco-20211231xex21d1.htm
<DESCRIPTION>EX-21.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:05 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;21.1</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CONSOLIDATED WATER CO. LTD.</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Subsidiaries of the Registrant</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following list includes all of the Registrant&#8217;s wholly-owned subsidiaries, majority-owned subsidiaries and affiliates as of December&#160;31, 2021. All subsidiaries of the Registrant appearing in the following table are included in the consolidated financial statements of the Registrant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:12pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"></div></div></td></tr><tr><td style="vertical-align:middle;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Subsidiaries</b></p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160; </p></td><td style="vertical-align:middle;width:49%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Jurisdiction of Organization</b></p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Aguas de Rosarito S.A.P.I. de C.V. (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Mexico</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Aerex Industries,&#160;Inc. (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States of America</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Aquilex,&#160;Inc. (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States of America</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Water Company Limited (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Consolidated Water (Bahamas) Limited (90.9%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">The Bahamas</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Consolidated Water Cooperatief, U.A. (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Netherlands</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Consolidated Water U.S. Holdings,&#160;Inc. (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States of America</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">DesalCo Limited (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">N.S.C. Agua, S.A. de C.V. (99.9%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Mexico</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Ocean Conversion (BVI)&#160;Ltd. (Affiliate)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">The British Virgin Islands</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Ocean Conversion (Cayman) Limited (100%)</p></td><td style="vertical-align:middle;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cayman Islands</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:middle;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">PERC Water Corporation (61%)</p></td><td style="vertical-align:bottom;width:2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:49%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States of America</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>5
<FILENAME>cwco-20211231xex23d1.htm
<DESCRIPTION>EX-23.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:08 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="margin-top:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;23.1</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Independent Registered Public Accounting Firm&#8217;s Consent</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">We consent to the incorporation by reference in the Registration Statement of Consolidated Water Co. Ltd. on Form S-8<b style="font-weight:bold;"> </b>(File No. 333-187261) of our report dated March 29, 2022,<sup style="font-size:7.5pt;font-weight:bold;vertical-align:top;"> </sup>with respect to our audits of the consolidated financial statements of Consolidated Water Co. Ltd. as of December 31, 2021 and 2020 and for each of the years in the two year period ended, which report is included in this Annual Report on Form 10-K of Consolidated Water Co. Ltd. for the year ended December 31, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="font-size:12pt;visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt;">Arch 31, 2020</p></div></div></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:50%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">/s/ Marcum LLP</b></p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">West Palm Beach, Florida</p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">March 29, 2022</p></td><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div><div style="clear:both;margin-bottom:30pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:24pt 0pt 0pt 0pt;">1</p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>6
<FILENAME>cwco-20211231xex31d1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:11 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;31.1</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CERTIFICATION PURSUANT TO RULE 13a-14(a)/15d-14(a)</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">OF THE SECURITIES EXCHANGE ACT OF 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">In connection with the Form&#160;10-K of Consolidated Water Co. Ltd. for the fiscal year ended December&#160;31, 2021, as filed with the Securities and Exchange Commission on the date hereof,&#160;I, Frederick W. McTaggart, certify, pursuant to Rule&#160;13a-14(a)&#160;of the Securities Exchange Act of 1934, that:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">1. I have reviewed the Form&#160;10-K of Consolidated Water Co. Ltd. for the fiscal year ended December&#160;31, 2021;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">2. 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 this report;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">3. 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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">4. The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and 15d-15(f)) for the registrant and have:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(a)&#160;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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(b)&#160;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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(c)&#160;Evaluated the effectiveness of the registrant&#8217;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</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(d)&#160;Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">5. The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s Board of Directors (or persons performing the equivalent functions):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(a)&#160;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&#8217;s ability to record, process, summarize and report financial information; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(b)&#160;Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;margin:0pt;">Arch 31, 202021</p></div></div></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Date: March 29, 2022</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:top;width:45%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/ Frederick W. McTaggart</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Name:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Frederick W. McTaggart</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Title:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Chief Executive Officer</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal Executive Officer)</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>7
<FILENAME>cwco-20211231xex31d2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:14 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;31.2</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CERTIFICATION PURSUANT TO RULE 13a-14(a)/15d-14(a)</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">OF THE SECURITIES EXCHANGE ACT OF 1934</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">In connection with the Form&#160;10-K of Consolidated Water Co. Ltd. for the fiscal year ended December&#160;31, 2021, as filed with the Securities and Exchange Commission on the date hereof,&#160;I, David W. Sasnett, certify, pursuant to Rule&#160;13a-14(a)&#160;of the Securities Exchange Act of 1934, that:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">1. I have reviewed the Form&#160;10-K of Consolidated Water Co. Ltd. for the fiscal year ended December&#160;31, 2021;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">2. 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 this report;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">3. 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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">4. The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules&#160;13a-15(e)&#160;and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules&#160;13a-15(f)&#160;and 15d-15(f)) for the registrant and have:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(a)&#160;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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(b)&#160;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;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(c)&#160;Evaluated the effectiveness of the registrant&#8217;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</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(d)&#160;Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">5. The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s Board of Directors (or persons performing the equivalent functions):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(a)&#160;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&#8217;s ability to record, process, summarize and report financial information; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:72pt;margin:0pt;">(b)&#160;Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:49.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:44.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:49.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Date: March 29, 2022</p></td><td style="vertical-align:top;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:top;width:44.79%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/ David W. Sasnett</p></td></tr><tr><td style="vertical-align:top;width:49.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Name:&#160;</p></td><td style="vertical-align:top;width:44.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">David W. Sasnett</p></td></tr><tr><td style="vertical-align:top;width:49.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Title:</p></td><td style="vertical-align:top;width:44.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Executive Vice President&#160;&amp; Chief Financial Officer</p></td></tr><tr><td style="vertical-align:top;width:49.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:44.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal Financial and Accounting Officer)</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>8
<FILENAME>cwco-20211231xex32d1.htm
<DESCRIPTION>EX-32.1
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:17 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;32.1</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CERTIFICATION PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">18 U.S.C. SECTION&#160;1350,</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">AS ADOPTED PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">SECTION&#160;906 OF THE SARBANES-OXLEY ACT OF 2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In connection with the Form&#160;10-K of Consolidated Water Co. Ltd. for the year ended December&#160;31, 2021 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;),&#160;I, Frederick W. McTaggart, certify, pursuant to 18 U.S.C. Sec. 1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, that:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">(1)&#160;The Report fully complies with the requirements of Section&#160;13(a)&#160;or 15(d)&#160;of the Securities Exchange Act of 1934; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">(2)&#160;The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Date: March 29, 2022</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:top;width:45%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/ Frederick W. McTaggart</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Name:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Frederick W. McTaggart</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Title:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Chief Executive Officer</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal Executive Officer)</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>9
<FILENAME>cwco-20211231xex32d2.htm
<DESCRIPTION>EX-32.2
<TEXT>
<!--Enhanced HTML document created with Toppan Merrill Bridge  9.11.0.85--><!--Created on: 3/29/2022 08:52:20 PM (UTC)--><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta charset="UTF-8"><title></title></head><body><div style="margin-top:30pt;"></div><div style="max-width:100%;padding-left:5.88%;padding-right:5.88%;position:relative;"><div style="clear:both;max-width:100%;position:relative;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">EXHIBIT&#160;32.2</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">CERTIFICATION PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">18 U.S.C. SECTION&#160;1350,</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">AS ADOPTED PURSUANT TO</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">SECTION&#160;906 OF THE SARBANES-OXLEY ACT OF 2002</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In connection with the Form&#160;10-K of Consolidated Water Co. Ltd. for the year ended December&#160;31, 2021 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;),&#160;I, David W. Sasnett, certify, pursuant to 18 U.S.C. Sec. 1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, that:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">(1)&#160;The Report fully complies with the requirements of Section&#160;13(a)&#160;or 15(d)&#160;of the Securities Exchange Act of 1934; and</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt;">(2)&#160;The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p><div><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;" align="center"><tr style="height:1pt;"><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"></div></div></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Date: March 29, 2022</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">By:</p></td><td style="vertical-align:top;width:45%;border-bottom:1.0pt solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">/s/ David W. Sasnett</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Name:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">David W. Sasnett</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Title:</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Executive Vice President&#160;&amp; Chief Financial Officer</p></td></tr><tr><td style="vertical-align:top;width:50%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:top;width:45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(Principal Financial and Accounting Officer)</p></td></tr></table></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><font style="visibility:hidden;">&#8203;</font></p></div></div><hr style="background-color:#000000;clear:both;color:#000000;height:2pt;line-height:0;margin-left:5.88%;margin-right:5.88%;margin-top:30pt;page-break-after:avoid;width:88.24%;border-width:0;"></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>10
<FILENAME>cwco-20211231x10k003.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 cwco-20211231x10k003.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 'R \L# 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#W^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 *
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 *
M*** "BBB@ HHHH **** "BBB@".>9+>WDGDSLC4NV/0#-<>?B?H*X#B:-L [
M9)(589&>09,BNHU;_D#WW_7O)_Z":YSX=QHWA4%D4G[1)R1[T 0_\+1\/?WW
M_P"_T'_QRC_A:/A[^^__ '^@_P#CE=EY,7_/-/\ OD4>3%_SS3_OD4 <;_PM
M'P]_??\ [_0?_'*/^%H^'O[[_P#?Z#_XY79>3%_SS3_OD4>3%_SS3_OD4 <;
M_P +1\/?WW_[_0?_ !RC_A:/A[^^_P#W^@_^.5V7DQ?\\T_[Y%'DQ?\ /-/^
M^10!QO\ PM'P]_??_O\ 0?\ QRC_ (6CX>_OO_W^@_\ CE=EY,7_ #S3_OD4
M>3%_SS3_ +Y% '&_\+1\/?WW_P"_T'_QRC_A:/A[^^__ '^@_P#CE=EY,7_/
M-/\ OD4>3%_SS3_OD4 <;_PM'P]_??\ [_0?_'*/^%H^'O[[_P#?Z#_XY79>
M3%_SS3_OD4>3%_SS3_OD4 <;_P +1\/?WW_[_0?_ !RC_A:/A[^^_P#W^@_^
M.5V7DQ?\\T_[Y%'DQ?\ /-/^^10!QO\ PM'P]_??_O\ 0?\ QRC_ (6CX>_O
MO_W^@_\ CE=EY,7_ #S3_OD4>3%_SS3_ +Y% '&_\+1\/?WW_P"_T'_QRC_A
M:/A[^^__ '^@_P#CE=EY,7_/-/\ OD4>3%_SS3_OD4 <;_PM'P]_??\ [_0?
M_'*/^%H^'O[[_P#?Z#_XY79>3%_SS3_OD4>3%_SS3_OD4 <;_P +1\/?WW_[
M_0?_ !RC_A:/A[^^_P#W^@_^.5V7DQ?\\T_[Y%'DQ?\ /-/^^10!QO\ PM'P
M]_??_O\ 0?\ QRC_ (6CX>_OO_W^@_\ CE=EY,7_ #S3_OD4>3%_SS3_ +Y%
M '&_\+1\/?WW_P"_T'_QRC_A:/A[^^__ '^@_P#CE=EY,7_/-/\ OD4>3%_S
MS3_OD4 <A%\3-"GF2&$2R2R,%1$E@+,3P  ).374:9J$&K:59ZE:EC;W<"3Q
M%A@[74,,CL<&LKQ9%&NB(0B@_;K+D#_IYBH\"_\ )/?#7_8*M?\ T4M &_11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10!3U;_D#WW_ %[R?^@FN?\ AS_R*B_]?$G\ZZ#5O^0/??\ 7O)_Z":Y_P"'
M/_(J+_U\2?SH ZRBBB@#F_$'B]-%O5L+72[[5;[R_.>"S4$QQYQN8D@?A4C>
M-="M] MM:O[P6%K/POVH%&W9P1CKFLS6M-\0Z9XFGUWP]8VNHF[MTMY[>XN/
M)*%22K*V",<\BJ>I:)XJW:-K1M=-U75+2*6*>T9O)C/F$?,K$'D8QTY&:%L#
MW.BOO&?AO3(89KS6;2&*>(S1.S\.@ZD$=:6_\9>'-+M+2[O=8M88+L V[L_$
M@]1BN3T7P'?V.M:1<7D5M-#!:W7F@$%(I)7W!4![ $BLU_!?B"T\)Z);VNE)
M)JUG')%]HBU/R&A!<D<;65UZ<'/TH?\ 7X@>@ZGXLT#1Q:G4=6M;<76/(+R?
M?!Z$>WO5+4O&UAIM]?VTD;$6=I'=M-O4(RNVT8-<YJ/AGQ1%<QW<=IIFL7-W
MIJ6-V;E_+6%QG+J,<@YZ#'2L_4_AWK7]F7]C:E+D-HMM8Q2O(%+R1OELYZ#%
M-)7_ *\_^!]XU_7X?\'[CL?$?C[0?#0:*YNXY+T!"+-''F$,0 >?KFK\_BS0
M;76XM&GU6VCU*7&RV9OF.>E<%XD\&^))[G6+>PTW3[NVU.:"X^U33!982FT%
M ".?NY!R.M6_$/AOQ9J_B0%K>UETV"^M[FWF6Y\ME12-R[ /F/4Y)^E"UL3K
M9^AT-C\1?#%]!J<ZZG%%!ILWE3R2_*,^H]03D?A6C/XLT"VT>#5IM6M4T^X(
M$4Y?Y7)["O.];\ ^(;Z'68+:)85.KG4;66WO!#),K#!7.T["/4@U8L? ^N:/
MHVC7-K:+>WUK=33S66HWXE!,@P3YH0#(Z_=[FDM5KY%/1Z>9V^A^*;;Q!X=F
MUFR@D:&-YD5,@F3RR1D8XYQQ6:OQ$TQKGP]"()\ZU'YD;<8A&0,/SZG''<5/
MX T6_P!#\+FSU.""&Y>ZGF:*!MR*'D+ #VP:XRV^'.N1:7XC1FA-R) NB?."
M$C61I5SZ?,_Z"F[)BW1V:?$#0(]--_J-XFGVYNI;6)KA@/-*-M+*!GC-3?\
M"<:"?$\&@+>HUY/;_:$(^Z5ZCGU(Y^@KE;SPMXHMO"^BZ/I\-I<0K:217R//
MY1$KC.\. 21DMP,9S3;;P5K<,^DK]G@\O^PFTRZE\[YH'SD,/[WI1L_Z[/\
M5+[P6O\ 7FOT_([.V\9>'+NUOKFWUBUEAL,_:F5L^5[GV]ZN6&NZ7JFF/J5C
M>Q7%FF[=,A^7Y>OY5Y)H_P ,=?M='UJ*Z^U/=26#65MY^J+-'("0>%\M=@X[
ML:]7325D\,#2741![7R7\OC!*X.,4/:Z!;ZF'IOC^#4=5M;;^QM4@M+QBEI?
M21#RIC@GL<@8!Y(%;$'BK0;G6Y-%AU6U?4H_O6X?YOI[GVKG=#M?&]K+IND7
M%KIEOIECA);U93(US&%( 5,#8>ASGM678>#=>CU&PT^:SL(].T_43?KJ<<O[
M^;EB$VX^4G=@DGD4:7\A:V9Z5<3"WMI9F!(C0L0.^!FLRR\1V5UX5C\0R;K>
MR:W-PWF=40#)SCZ5+&;^^T:X6\M$MKIUD01++O&.0IS@=1@^U<AX2A\86>D6
MOA_5/#MG!916S0M>+J D/W3CY O<X[U.MG;^MRM-+FO;?$;PO<:%::N^JP06
M]TQ2(3-M)8=5K6\.:Y!XDT&UU>VB>.&X4LJOC(P2.WTKSNP\*>*=,M=%G31=
M-N;FSM9=/DMIKD;-C,")@VW\UQFNK\%:=K.@:!H^D7=A $CBD^TRI,,1-N)5
M57'(.?7BKLM?Z[_U^!)UM%%%2,P_%O\ R D_Z_K+_P!*8J9X%_Y)[X:_[!5K
M_P"BEI_BW_D!)_U_67_I3%3/ O\ R3WPU_V"K7_T4M &_1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!3U;_D#WW_7
MO)_Z":Y_X<_\BHO_ %\2?SKH=4!;2+U5!),#@ =_E->=^&_$4^B:.EK%_9,J
M,QE!FNIXG&[G:5$# $=.IH ]/HKA_P#A.KO_ )XZ)_X,+C_Y&H_X3J[_ .>.
MB?\ @PN/_D:@#N**X?\ X3J[_P">.B?^#"X_^1J/^$ZN_P#GCHG_ (,+C_Y&
MH [BBN'_ .$ZN_\ GCHG_@PN/_D:C_A.KO\ YXZ)_P"#"X_^1J .XHKA_P#A
M.KO_ )XZ)_X,+C_Y&H_X3J[_ .>.B?\ @PN/_D:@#N**X?\ X3J[_P">.B?^
M#"X_^1J/^$ZN_P#GCHG_ (,+C_Y&H [BBN'_ .$ZN_\ GCHG_@PN/_D:C_A.
MKO\ YXZ)_P"#"X_^1J .XHKA6\>7*(SO'H:JHR2=1G  _P# :E'CNZ(!$6AD
M'H1J%Q_\C4 =S17#_P#"=7?_ #QT3_P87'_R-1_PG5W_ ,\=$_\ !A<?_(U
M'<45P_\ PG5W_P \=$_\&%Q_\C4?\)U=_P#/'1/_  87'_R-0!W%%</_ ,)U
M=_\ /'1/_!A<?_(U'_"=7?\ SQT3_P &%Q_\C4 =Q17#_P#"=7?_ #QT3_P8
M7'_R-1_PG5W_ ,\=$_\ !A<?_(U '<45P_\ PG5W_P \=$_\&%Q_\C4?\)U=
M_P#/'1/_  87'_R-0!W%%</_ ,)U=_\ /'1/_!A<?_(U'_"=7?\ SQT3_P &
M%Q_\C4 ;GBW_ ) 2?]?UE_Z4Q4SP+_R3WPU_V"K7_P!%+7-ZAXHFU:WBM9VT
M>"'[3!*\B7D\C!8Y4D.%-N,D[<=1UKIO!,;Q> ?#D<B,DB:7;*RL,%2(ER"*
M -VBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH R_$O_(JZQ_UY3?^
M@&KEA_R#K;_KDG\A5/Q+_P BKK'_ %Y3?^@&KEA_R#K;_KDG\A0!8HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@#+\2_P#(JZQ_UY3?^@&KEA_R#K;_ *Y)_(53\2_\BKK'_7E-
M_P"@&KEA_P @ZV_ZY)_(4 6**** "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 ***P?$GG2W.AV<=U<6R75^8Y6
MMWV,5%O,^,_[R*?PH WJ*P_^$97_ *#&L_\ @8U'_",K_P!!C6?_  ,:@#<H
MK#_X1E?^@QK/_@8U'_",K_T&-9_\#&H W**P_P#A&5_Z#&L_^!C4?\(RO_08
MUG_P,:@#<HK#_P"$97_H,:S_ .!C4?\ ",K_ -!C6?\ P,:@#<HK#_X1E?\
MH,:S_P"!C4?\(RO_ $&-9_\  QJ -RBL/_A&5_Z#&L_^!C4?\(RO_08UG_P,
M:@#<HK#_ .$97_H,:S_X&-1_PC*_]!C6?_ QJ -RBL/_ (1E?^@QK/\ X&-1
M_P (RO\ T&-9_P# QJ -RBL/_A&5_P"@QK/_ (&-1_PC*_\ 08UG_P #&H W
M**P_^$97_H,:S_X&-1_PC*_]!C6?_ QJ -RBL/\ X1E?^@QK/_@8U'_",K_T
M&-9_\#&H W**X^ST>2;Q#J=F^M:P8;>.!HQ]K.06#YY_ 5J?\(RO_08UG_P,
M:@#<HK#_ .$97_H,:S_X&-1_PC*_]!C6?_ QJ -RBL/_ (1E?^@QK/\ X&-1
M_P (RO\ T&-9_P# QJ -RBL/_A&5_P"@QK/_ (&-1_PC*_\ 08UG_P #&H W
M**P_^$97_H,:S_X&-1_PC*_]!C6?_ QJ -RBL/\ X1E?^@QK/_@8U'_",K_T
M&-9_\#&H W**P_\ A&5_Z#&L_P#@8U'_  C*_P#08UG_ ,#&H W**P_^$97_
M *#&L_\ @8U'_",K_P!!C6?_  ,:@#<HK#_X1E?^@QK/_@8U'_",K_T&-9_\
M#&H W**P_P#A&5_Z#&L_^!C4?\(RO_08UG_P,:@#<HK#_P"$97_H,:S_ .!C
M4?\ ",K_ -!C6?\ P,:@#<HK#_X1E?\ H,:S_P"!C4?\(RO_ $&-9_\  QJ
M+'B7_D5=8_Z\IO\ T U<L/\ D'6W_7)/Y"N9\0^'%C\-:J_]KZNVVSF.UKLD
M'Y#P1Z5;LO#2M86Y_MC6!F)3@7A]!0!T=%8?_",K_P!!C6?_  ,:C_A&5_Z#
M&L_^!C4 ;E%8?_",K_T&-9_\#&H_X1E?^@QK/_@8U &Y16'_ ,(RO_08UG_P
M,:C_ (1E?^@QK/\ X&-0!N45A_\ ",K_ -!C6?\ P,:C_A&5_P"@QK/_ (&-
M0!N45A_\(RO_ $&-9_\  QJ/^$97_H,:S_X&-0!N45A_\(RO_08UG_P,:LC6
MM!,%YHBIK.L8FO\ RVS>-T\F4_S H [.BL/_ (1E?^@QK/\ X&-1_P (RO\
MT&-9_P# QJ -RBL/_A&5_P"@QK/_ (&-1_PC*_\ 08UG_P #&H W**P_^$97
M_H,:S_X&-1_PC*_]!C6?_ QJ -RBL/\ X1E?^@QK/_@8U'_",K_T&-9_\#&H
M W**P_\ A&5_Z#&L_P#@8U'_  C*_P#08UG_ ,#&H W**P_^$97_ *#&L_\
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
MW2-\EO-[8QQC)[FN^I=$#W85PWQB_P"23Z__ -<H_P#T:E=S7#?&+_DD^O\
M_7*/_P!&I0!W-%%% !1110 4444 %%%% '*_$K_DFGB/_KPE_E6WHG_( T[_
M *]8O_016)\2O^2:>(_^O"7^5;>B?\@#3O\ KUB_]!% %^BBB@ H) !)Z"BH
M+VW:[L9[=)6A:6-D$BC)3(QD4GMH".&_X6-.MAX@NCIH<6,37%DL;_\ 'Q""
M5+DD@8# YQVID'C[5!=R17VFK:QPM:Q.Y0,6>9@  !(<#!]_Z5;G^&.EFQBM
MK2[O+8+9R6<A,K2>8CK@\,2%Y ;C'-7[OP1;7<D[M>3*9IK68@*.# 00/QQS
M5JR:OY?U]P/5%32/'1O5!N;9M_DRR^5!&6)"S&,8).!T&<X ZD@4)\1]/GN+
M7R;6;[(XN/M,[/'BW,/WLX8@X]5)_&HW^&MFT C&H3@JI"DH",^=YP)'<9XQ
MW%2#X<V;1NDM]-(LTEPTP** ZS* ZX[=.#VI?U_D/2Y8D^(.DQ1)YD-VES(R
MK':N(UD<,"RL"7"X(!ZL#VQGBNFM+E+VSAN8TE1)4#A98RCC/8J>0?:N0C^'
M-C%I4EBDML%<KD?V?#L8*, ,H'S'OG.<UTVBZ5!H>C6FEVQ<P6L8C0N<G H=
MM2=2_1112&%9?B7_ )%76/\ KQF_] -:E9?B7_D5=8_Z\9O_ $ T 9_@7_D5
MQ_U^WO\ Z52UTE<WX%_Y%<?]?M[_ .E4M=)0 4444 %%%% !1110 52UB&2Y
MT2_@A7=++;R(B^I*D 5=HH \WT:Y\7:)I_V.W\/R/%YLDH,J)N&]RQ!Q+CC.
M*T/^$@\:_P#0M_\ CJ__ !ZNXHH X?\ X2#QK_T+?_CJ_P#QZC_A(/&O_0M_
M^.K_ /'J[BB@#A_^$@\:_P#0M_\ CJ__ !ZC_A(/&O\ T+?_ (ZO_P >KN**
M .'_ .$@\:_]"W_XZO\ \>J"?Q7XNMI;:*;P^%>YD,4(V+\S!6?'^M_NHQ_"
MN_K#U[_D+^&?^PF__I)<4 8?_"0>-?\ H6__ !U?_CU'_"0>-?\ H6__ !U?
M_CU=Q10!P_\ PD'C7_H6_P#QU?\ X]1_PD'C7_H6_P#QU?\ X]7<44 </_PD
M'C7_ *%O_P =7_X]1_PD'C7_ *%O_P =7_X]7<44 </_ ,)!XU_Z%O\ \=7_
M ./5-\.M)U+2[+77U.V:WFO]8GOE1@H^614/0,W ;<.O;-=E10 4444 %%%%
M !1110!ROQ&TB\USP3=6%A"TMP\UNRHN,X69&)Y(' !/451_X2#QK_T+?_CJ
M_P#QZNXHH X?_A(/&O\ T+?_ (ZO_P >H_X2#QK_ -"W_P".K_\ 'J[BB@#A
M_P#A(/&O_0M_^.K_ /'J/^$@\:_]"W_XZO\ \>KN** .'_X2#QK_ -"W_P".
MK_\ 'J/^$@\:_P#0M_\ CJ__ !ZNXHH X"/Q7XNENYK5/#X,T 5I$V+\H;./
M^6O?!J?_ (2#QK_T+?\ XZO_ ,>K<T[_ )&_7/\ KC:_RDK<H X?_A(/&O\
MT+?_ (ZO_P >H_X2#QK_ -"W_P".K_\ 'J[BB@#A_P#A(/&O_0M_^.K_ /'J
M/^$@\:_]"W_XZO\ \>KN** .'_X2#QK_ -"W_P".K_\ 'JJ:E?\ C#5;"2RG
M\/O'%*5#LB)N !!XS-[5Z'10!D>%K6XLO"VFVUU"T,\<"K)&Q!*GT."16O11
M0 4444 %%%% !1110 5Y[J-KXBTOXAZGK.F:6UW!=V<$ .%(RA8GJZGOZ5Z%
M10!P_P#PD'C7_H6__'5_^/4?\)!XU_Z%O_QU?_CU=Q10!P__  D'C7_H6_\
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
M1110 5Q^@>&M$U&RN[N]TNUN+A]2O@TDL89CBZE Y]@ /PKL*P_"?_('N/\
ML)W_ /Z5S4 -?P?X8C1G?1=/55&23"H %4K'1_!&IRO%9Z?IDTB?>581G'KR
M.1[BMGQ#93:AX?O;2W ,LD1"J3@,?0_7I^-<[JU]+?6:I!X7NY4C4),TR-$4
M&1E551F0<<A>,>M &Q_PAOAK_H!V'_?D4?\ "&^&O^@'8?\ ?D5P]I;ZK86$
M=JT3PW%[>S6:0[3'MMW(8,B%B0H&>_&>W2K4?A286N6L[DRN;_?EFRP\QC#G
MGZ%:?2X=;'6GP7X98$'0K @\$&!>:;)X0\+00M))HFGI&BDL3", "N"U?3]<
MNB#;Z1=Q72[HYI0DCR2(8L ^86P!G^$ X/I79>'-'DT[4K^#[/)'9365L<,2
M5:7]X)#SWQLS^%%M&Q7UL._L+P7]KBM/[.TO[1-"9XX_+7+1C&6'MR*F3POX
M3DM!=)I&G& KO\SR1C;ZURLFA:R(9[];&1KZVN4L;<9Y>V"LA<>Q\QF_X"*@
MO]%U";58H+;1Y8XXWF@G<H[F:,Q,$S(6V[2<?* <$CD8Y/3^OZT*2UU.TB\(
M^%YHDEBT73WC<!E80C!![T__ (0WPU_T [#_ +\BO/K/0M<2:(1Q36VU8O(
MT^1G2,( R>9YJJ@)#94H2<Y&>*]'\-:>NFZ!:0>28I3&K2@]2Y')/O0T(PO%
M/A;0;/PIJUS;:19PSQ6LCQR)$ RL%)!![&NSK#\9_P#(E:W_ ->4O_H)K<I
M%%%% !1110 5QWA_PUHFHZ?<75[I=K<7#ZA>[I)(PS'%S*!D_0 ?A78UA^$_
M^0)+_P!A"^_]*I: #_A#?#7_ $ [#_OR*/\ A#?#7_0#L/\ OR*W*Q;+Q1IM
MY;WMP7:WBM)3&[S8 8=G7U4]O7% #?\ A#?#7_0#L/\ OR*/^$-\-?\ 0#L/
M^_(JQ!XCT:ZCDD@U*WD2)&D<J_W57[Q/TJ!/%6FFX>*23RT1)':5F4H CA#R
M"><GI18!H\%>&%+$:#IX+')(@7D]/Z"E_P"$-\-?] .P_P"_(JY'KNES0K-'
M?0M&REPV[J <']3BIM0OX]-TV>^E5FCA0R,$ZD#TS0!F_P#"&^&O^@'8?]^1
M1_PAOAK_ * =A_WY%36WB;1KJ7RH]1@\W#$H6Y7;]X'W'>K>GZI8ZK TUA=1
MW$:ML+(<X/I18#._X0WPU_T [#_OR*JZ+IMEI7C/5[:PMHK: Z?92&.)=J[C
M)<@G'K@#\A735AVO_(]ZM_V#++_T;=4 ;E%%% !1110 4444 %%%% &'IW_(
MWZY_UQM?Y25N5AZ=_P C?KG_ %QM?Y25N4 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 5SWBNV@O6T6UN8EE@EU)5DC<95AY4AP1WY KH:P_$/
M_'YH'_837_T5+0 ?\(;X:_Z =A_WY%'_  AOAK_H!V'_ 'Y%/U#7I+/4Q86^
ME7E[+Y/G,8&C 5<X_C<$GZ9IUIXGT>\-LL=]$);E \<;'#?0CL>#Q[4 1?\
M"&^&O^@'8?\ ?D4?\(;X:_Z =A_WY%3#Q/HAAFE&I6Y2$A7.[H3T^OX56D\7
MZ8&(@9[G='&\1A 82EV90J\]<J<YQB@!Q\%^&64JVA6!!&"# O-*/!GAH# T
M.PQ_UQ%/C\1VT=O+)J4,VF-$P5DNMO.>1@J2&_ U8N];M+2VL[@$S0W<R0Q/
M%@@ESP>O2BP%3_A#?#7_ $ [#_OR*/\ A#?#7_0#L/\ OR*M7FNZ?IUR\-[<
M) $1'+NXP=S$ 8SGJI[57;Q7HOE,\-_#-M02;4<9VDXSSCN: V&_\(;X:_Z
M=A_WY%'_  AOAK_H!V'_ 'Y%)9>+]$O;*UNA>QQ+=9$2RG#'!QT[<U./$FF/
MK,.E0SB:ZD+@B,@A-HR<_P#UJ >A2\,V=MI^J>(;6S@2"W2\CV1QC"KFWB)P
M/J:Z.L/1?^0_XD_Z_(O_ $GBK<H **** "BBB@ K#\0?\?\ X>_["8_]$35N
M5A^(/^/_ ,/?]A,?^B)J -RBBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M "-^N?\ 7&U_E)6Y0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!6'XA_X_- _[":_^BI:W*P_$/_'YH'_837_T5+0!'J%GK4?B$:AIEO831O;>
M0PN;EXBAW9R L;;OID5SMG\/+FQOEQ<)<P221SS.]U-'MD7DXB3Y6!.2,L,9
M[U:L+R[UV\M8;F]N+>WNUGGQ#(8V.V38J!AR,*,G'?--U7Q-=:%9XM-4LM02
MU/[WS(GDF?\ >;=I*$!,=-QSDCI0N@FMR.V\*>(;$G[')8P1(55;9+J0HX!/
MS*61C!Q_"NX>_>H]'\"ZKIMN':ZM&NX&\R [W96832R88D9P1(!GDYSU[V[S
MQAJD<306]O:?;K=BET'5MBDRA$(P<C<#N^E1OXLURS8B\.D!5NI;,R%9$4LH
M#*_5L#G&SDY_BYP&F^G]?U<>^G]?UH:%SI?B2[N[?5)6T[[3;.3#8"9C" 5*
MDF7R]Q8YS]S QCWI)_#>HP^&-,L;1K2:\L[E+AA*[11N0Y8@$*Q YP.#63:^
M,M=OM0;3+?\ LXW$=U) UR]K*B,%A60$1E\C[V/O'/45I:IKM[-X6T35+<&*
M:ZG@9XT? ;=U7/H:=GH_0.MO46X\/ZOJFLQ:E>Q6%NR_9PT,5P\PQ'(['YC&
MO4,.W6H+CP9>20V*1R6JF W!?D\^9*CC''HIS[U3'BW4I @NI;>WN(KB-FB:
M*2WPC!^'W;@RY7AU)!YX&.60^-==N-<&BPG39)VEB NC;2I&%DCE;A"^6P8_
MO9 .>@Q2MIZ?\ &[O7L'_"!:GNC+O;R VZVDBB^GB4(KLP?" ;R0_*'&,<-6
MMI/AK4[#5-,$AL38:=Y^R178S2B0<9!7 QW^8YZ\=*R+WQ9K>H:+<RVS6=H;
M6")[@X;?(SN1^[.[Y0-O<-G..,9JVGB;5;FWU**Y:&TNH(#<P1"%T;"-S\Q)
M65>F64CK@BA^82U>IOZ+_P A_P 2?]?D7_I/%6Y7/^'9?/U;7YL8WW,+8/;-
MM$:Z"D"=PHHHH **** "L/Q!_P ?_A[_ +"8_P#1$U;E8?B#_C_\/?\ 83'_
M *(FH W**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ K#UW_D,^&/^PD__I)<5N5AZ[_R&?#'_82?_P!)
M+B@#<HIDLT4"[I94C7&<NP I(;B&Y3?!-'*N<;D8,/TH DJ*YG2UM9;B0X2)
M"[?0#-+Y\)_Y:IU ^\.I.!^M-NXHKBUDMIB DZF,@GKD'BD[VT&M]3@+[QSJ
MEM+<,]WI-MY-K'<I:S6TC//N!;8'$@"G&!G:>>:WT\0WK6\]OY4 U+[4D,*8
M)1E?#!SSSA=Q.#_#4*>$7$9$^M7-N;B%+6>.'RBDRJ"HY="P)7K@_2MB/2-.
MAU6WNDPMQ#!Y$:;_ .'L<>N!C-5H2[F;HOB.ZOGLOM44*I=R7$2F,$8:)R!U
M)ZJ,_4&I%\077]F^(;K[,DCZ9+(D4:<%PJ!AG)QG)]JDLO#BV-W9^7*6M;0S
M2H'.6,DC$G. !@ D#ZU&OAA6GOI8=8O1::@[236RK"8VW*%.&V;@,#^]2EL[
M=BE:^O<IGQE,Z6"Q:;.))9;>*XD8*8XFD )7A\YP<Y&1TYKKJYB/PA;1SVZ_
MVM>GRGBF>+,8$KQX"LP"YZ #C XKHH 8XUA><S2JOS.^T,WN0 !^E-V(5^O8
MEHHI"ZA@I8!CT!/)I%"UAVG_ "/.K_\ 8.LO_1ES6WN7=MR-V,XSS6):?\CS
MJ_\ V#K+_P!&7- &Y1110 5Q&^5/ U[Y>0K:O=I*1VC-_('_ /'2:[>N,T7Q
M!H%KIE[I^I:G912?VC?B6":50<-=2GD'U!!_&@" MH]K>:E#J]JTVHO>;K6-
M$S+)'\OE^4>, =#@@#!S62^LZE<>("NGW5^H_P!(:6.>?)#1G*IL"[4! P.<
MD'GUKLU\8>&$1477=."J, ?:%Z?G4=UXI\)WEM);W&M:=)#(,,IN%Y'YT)V
MY)[_ %C55DU6+4+^WAN+2:\M8HV("J'18\C'=06P?[QHU74[VP?4;%[[4F*2
MEK5C<&,$F!'VEPI8_,QPH![CM77Q>+O"T,211:WIJ1HH556=0 !T'6G_ /"9
M>&?^@]I__@0O^-#[(%O=G%:/J&N75J^I2ZE>B7^T(H%0@F,1M;QEODQS\Q)^
MM;O@S4+NY_M.WN;A[KRU5A.L[2QDG=D#<JLC<#*<@<8/-;'_  F7AG_H/:?_
M .!"_P"-'_"9>&?^@]I__@0O^--NXDK' :5>W]E%I4!N99(G@1!9I(\4B @Y
M/EE2LJ]R<@K45UK=_9VEFEA<7T=Q$T44D;S858RG)6(*<C)^\Q'/0]!7HG_"
M9>&?^@]I_P#X$+_C1_PF7AG_ *#VG_\ @0O^-#=W<?6YR*76J6<$23ZG?FUG
MM;2:ZG=B6AW.XD*G^'@+G'3K6;9:A=V,L4EMJ$\]LUU(8[<RO%++F4Y9?D*S
M$C'RG&!SGFO0/^$R\,_]![3_ /P(7_&C_A,O#/\ T'M/_P# A?\ &G<'J8=^
M3_PA7BV-<^0GV@1>PVY('T.:[BN(\1^(O#;^#]5L;#5;!Y);658X8IE+.S \
M 9Y))KMZD HHHH **** "L/PG_R!)?\ L(7W_I5+6Y7'>'_$NAZ=I]Q:WNK6
M=O<)J%[NBEF"LN;F4C(/L0?QH W7\/:;+%-#/ )899C/L?HC-][;CD9//XFI
M%T/2UB,2V, 1H3 5"]8R<E?H35/_ (3+PS_T'M/_ / A?\:/^$R\,_\ 0>T_
M_P "%_QH MOH&DR2&1[" L=V25Z[L;OSP/RJ$^%]$-H+4Z; 80Q<*0>IZ\]:
MB_X3+PS_ -![3_\ P(7_ !H_X3+PS_T'M/\ _ A?\: +]QI-A=6"6,UK&]M&
M $C(X4#ICTJNWAK1G@B@;3H#'$K*BE>@;[WYX%0?\)EX9_Z#VG_^!"_XT?\
M"9>&?^@]I_\ X$+_ (T 31>&-$AQY>FP+AQ)G;_$%VY]^.*3_A%M#^SM!_9L
M'ELP<C!SD=.>O<_G47_"9>&?^@]I_P#X$+_C1_PF7AG_ *#VG_\ @0O^- %Z
MSTFUL;N:XA7#21I$!QA$7.%7VR2?QJC:_P#(]ZM_V#++_P!&W5'_  F7AG_H
M/:?_ .!"_P"-5=%U*RU7QGK%QI]U#=0C3[)#)$X90PDN21D=\$?F* .FHHHH
M **** "BBB@ HHHH P]._P"1OUS_ *XVO\I*W*P]._Y&_7/^N-K_ "DK<H *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K#\0_\?F@?]A-?_14M
M;E<]XKN8+)M$NKJ5(8(M24R2.<*H\J09)[<D4 6V\.:9);O;SVXFA,S3*C_\
MLRQRVTCD G)_&B;PQH=PJ++IENRQIY:C;P%SG'Y\U#_PF7AG_H/:?_X$+_C1
M_P )EX9_Z#VG_P#@0O\ C0!+:^';*":^FFS=2WDJR2-*%_@^XHP!PN.*GN-#
MTN[C>.XL89$>1I6#+U<C!;ZXJG_PF7AG_H/:?_X$+_C1_P )EX9_Z#VG_P#@
M0O\ C0!9M?#VD64HEMM/ACD!R&4<YV[<Y]<<5.VE6#V<%HUI$;> J8HRORIC
MICZ5G_\ "9>&?^@]I_\ X$+_ (T?\)EX9_Z#VG_^!"_XT7 GB\-:+#&Z)IL
M5VW,"N<GD#K]3^=%KX9T6RN$N+;3H(YDQMD ^88# <^P9OSJ#_A,O#/_ $'M
M/_\  A?\:/\ A,O#/_0>T_\ \"%_QH GG\,Z+<^5YVFV[^4-J97H,YQ[\\TQ
M_#&DF.=8;5(#<8\UHQ@NN<E?8'OBH_\ A,O#/_0>T_\ \"%_QH_X3+PS_P!!
M[3__  (7_&@!-$ &O>(P!@"\BQ_X#Q5NUSGAF]MM0U3Q#=6<\<]N]Y'MEC;<
MK8MX@<'ZBNCH **** "BBB@ K#\0?\?_ (>_["8_]$35N5A^(/\ C_\ #W_8
M3'_HB:@#<HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "L/7?^0SX8_["3_\ I)<5N5SGBF\MK"^\.75W
M/'!;QZDV^61L*N;6X R>W) _&@#!\<;YI-:279MBTZ$V_F+N4;I3YAQQG[J9
MYZ?6L^Q-S+K*P6=[ UG=7L"O=:1$UO&1Y4NY,;FP<JI)![BNQ;Q7X4>XCG;6
MM-,L8*J_GKD XR.OL/RJ3_A,O#/_ $'M/_\  A?\:$'5O^MK' 1&Z@O+B07-
MTMU+):! V6&P71#$+WP,?G[U-9RWVK2V%C<7MS-LU*-FO(+AF',4N0-RAHFX
MY7G&1@UW/_"9>&?^@]I__@0O^-'_  F7AG_H/:?_ .!"_P"--/3^O+_(.]NO
M_!,^&RNM8\&M%)-(U];S.]M-+RP>*0F,GUZ 'U!-8.NW.H_V4VN6ZSVUW=Q7
M#( OSQ*L+;!['=DUUW_"9>&?^@]I_P#X$+_C1_PF7AG_ *#VG_\ @0O^-('N
M<IJEY<Z;J<=L^K7\<XO;2.VB:5F$T3R+O)]>I'MTJKH]SK#6T5VU]>J8'T]%
MAR0A$A"R97OP3]*Z:37?!,VI)>RZMICW:8*LUR#C'0XSC\<5?_X3+PS_ -![
M3_\ P(7_ !JHNVXFNASGBYKJ'Q*\UM="TQ8*#*Y=4(\SE2Z E,_WL<5EIJ\A
M6"YN7U"$2P+$9EN0-V'?!,VT'8<##8!(QZUV_P#PF7AG_H/:?_X$+_C1_P )
MEX9_Z#VG_P#@0O\ C4C>IP&B:EK]]8W%W<:A?++9K$$C#L5)^T.AW94%OD Y
M(&>N!3[V[NY[Z"4ZM<PZHC77VA)%<I; '"X"CY 5QR.QW<UWG_"9>&?^@]I_
M_@0O^-'_  F7AG_H/:?_ .!"_P"-.X[G/:'?7%T='D8R-.MY+#YAN#.LL6W)
M*R%5+)TY(SD$<XS70VG_ "/.K_\ 8.LO_1ES49\5^%&N%G.M::954JK>>N0#
MU[U%HNHV6J>,-8N;"ZBN8!8V<9DB8,NX/<$C([X(_,4-DV.EHHHI#"BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@##T[_D;]<_ZXVO\I*W*P]._P"1
MOUS_ *XVO\I*W* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *P_$'_ !_^'O\
ML)C_ -$35N5A^(/^/_P]_P!A,?\ HB:@#<HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@##7_D>Y/^P8G_HUJW*PU_Y'N3_L&)_Z-:MR@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBLK5-;_LZ^M;*+3KR^N+B*254MO+&U(R@8DNZCK(O3
M- &K6/KM_?6DFEV^G?9A/?79@WW"LRJ!#+)G (.?W>.O>H_[>O\ _H5=9_[[
MM?\ X_6;J=_JMYJ&C3Q^%M6"6=XT\NZ2UR5,$L?'[[KF1?PS0!I>5XJ_Y^]&
M_P# 67_XY1Y7BK_G[T;_ ,!9?_CE']O7_P#T*NL_]]VO_P ?J&[\4SV-I+=W
M?AK6(K>%2\DA:V(51U.!,3^0H F\KQ5_S]Z-_P" LO\ \<H\KQ5_S]Z-_P"
MLO\ \<K<HH P_*\5?\_>C?\ @++_ /'*/*\5?\_>C?\ @++_ /'*W** ,/RO
M%7_/WHW_ ("R_P#QRCRO%7_/WHW_ ("R_P#QRMRB@#EX-*\3P:I>7POM(+W2
M1JRFUDP-F[&/WG^U5SRO%7_/WHW_ ("R_P#QRMRB@##\KQ5_S]Z-_P" LO\
M\<H\KQ5_S]Z-_P" LO\ \<K<HH P_*\5?\_>C?\ @++_ /'*/*\5?\_>C?\
M@++_ /'*W** ,/RO%7_/WHW_ ("R_P#QRCRO%7_/WHW_ ("R_P#QRM#5=1BT
MG3)[Z:.21(@"4B +-D@ #) ZGN16?_;U_P#]"KK/_?=K_P#'Z (+V3Q39V%Q
M=&YT=A#$TFW[-*,X!./]9[5MV-PUUI]M<, K2Q*Y Z D U@ZEJVI7>EW=M'X
M5U@/-"\:[I+7&2I S^^I=/U?4K73;6WD\*ZQOBA1&Q):XR  ?^6U '2T5A_V
M]?\ _0JZS_WW:_\ Q^KND:HFKV;SK;SV[)*\+Q3[=RLIP0=K$=1V- %^BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***R+_
M %TV>IC3X-+OKZ?R1,PMC$ JDE1DR.O<'IF@#7K#\0?\?_A[_L)C_P!$34?V
M]?\ _0JZS_WW:_\ Q^LW5;_5;VZTJ2+PMJP6TO//DW26HROER+Q^^ZY<4 ==
M16'_ &]?_P#0JZS_ -]VO_Q^H+SQ5<6%C<7MUX8UF.WMXVEE?=;':JC).!-D
M\"@#HZ* <@&B@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HK"/B25[JZAM-!U2[6VF,+RPF
M*6 &<;Y5/?TI?[>O_P#H5=9_[[M?_C]  O\ R/<G_8,3_P!&M6Y7(B_U4>)G
MU'_A%M6\DV:P >9:[MP<M_SVZ8-:7]O7_P#T*NL_]]VO_P ?H W**PD\1R+>
MVEO=Z%J=F+J7R8Y9C 4W;6;!V2L>BGM6[0 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%<]J>X>,=.V.$?\ LF_VLW0'S+7DUT-<]K!N[7Q/IFH0Z9=7L$=E=02?9C'E
M&=X&7(=EX(C;IZ4GJ@1Q7VR^&HZ?IQ-Y'9W:Q&]G-[O$C&4*&1E8[5;YAP1T
MZ#%=#%+='P5?I%=N!#=R112R3[6:(2XVB1CU(X!)_&K0EM!;7%L/ MX(+AMT
M\7V>UVRGU8>9AC]:CEU2PM?L=I)X,O4$VZTMXOL]MC!4NR "3 !6,DCH=OTJ
MKZ6%;6YSLIUITFO(&N+:QTZY:.*">[8R*?W9&2"PD.=Z;23][KQ5K^W)-1\$
M>([2YBD6YCLI9G=I=X;=O&,?PX*D8],5T46H+!:QVL/@W48[>(@QQ)%;!$(.
M00!+@8-9^LR37>A:M9Z?X1U""YU"%U:0);H'<K@,Y$F3]>:+A8[6BBBD,***
M* "BBB@ HHHH **** "BBB@##\8?\BM>?6/_ -&+5?QN;N/0#-:WDEMY<L9?
MR^"XW 8SV%7/%-M<7?AN\AM8&GG(4K&A +88' R0.@[FJ\VLRW$1BG\*:M+&
M>JNENP/X&6A;@<KK%W=P07VIPW5R-174I+98Q.VT1!>!LSM^[\V<9J.>SOY'
MN;;3-1G-I#:VMY+YMY)]YEE#8?)(Z(VWH<>]=%/J%I!<2ZM-X+OEN$C/F71M
M[8R; .06\S.,=J+"^LX; I8>"KV&TN0)&2&WMD63(ZD"3GCUH6BM_7]=0ZW_
M *_KH5?"/B*XNM4DLKZ.4SS[F61I 0-BI\NS^'AU.>Y)]JVO#'_'MJ7_ &$[
MK_T8:KIJ7EW;W:>#]26Y= C3+%;!V4= 6\W)'M5GPQ%<QV%T]U:RVKSWL\RQ
M2E2P5G)&=I(Z>]-NXDK&W1112&%%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !6&G_ "/<_P#V#(__ $:];E<Y?27EAXK:^CTJ\O;>
M2Q6'=;&/Y6#L<$.Z]B* ,;Q)>:KI^J:[+;WLKE-%EGMX@/EC89P0.YXZU3$*
M#Q/;:,E]>/I4RI)(?MDF=_ED@;]VX9QG /:NG;6)&F,S>$]5,I387*6^2OIG
MS>GM65-<:-:6L6G2^ [A+:ZGVI;_ &.U\MY-I;[HDQG"GD^E'0;=_P"O3_(Y
M\W.NV=A;ZPM[)+')!)'$3,S,47?\VSH?E ?=WX'>N@N-374OAAKZB&2)[73I
MX&#S>:3^XW [_P"+(89]\UJ+JK((@OA'5%$2[(P([<;%Z8'[W@5F:M--)X2U
M/1]+\(:C;?:+2:&*.-+>- SH1T$G')YIWW)MHCM%^X/I2TB\*![4M(84444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110!A^&_O:S_V$Y?Y+7.Z[=WR>([NY=R+6PDM@D:SO&[;V .T
M [6R3C# YZ#%:MC=W^D7>J1/H.I7"RWKS1RP>2592%Q]Z0'MZ5)-J"W%W#=3
M>#M1DN8,^5,\5L7CSUVDRY'X4=0Z',VL&H7]I:QV5[<&\O[-IKI7NGQN65<J
M#D^7D;DRN,?A4WAS7[NVUBVLK[S)T/\ HT<@GR!EFYP>7Y4KN_V<]ZU[75[*
MRU6>&T\'7\%],@FF,4%LC2*21N8B3GG/6K OD66"4>#-0$ENI6%Q#;9C!ZA3
MYG ^E-,3ZEKQ#_Q^:!_V$U_]$RUN5R]W=7VK:EHZ+H6HVR07HFEEN/)"JHCD
M7^&0GJP[5U%(84444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !6'KO_(9\,?\ 82?_
M -)+BMRL/7?^0SX8_P"PD_\ Z27% &Y1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 4-<_P"0!J7_ %ZR_P#H!IVC_P#($L/^O:/_ -!%-US_ ) &
MI?\ 7K+_ .@&G:/_ ,@2P_Z]H_\ T$4 7:*** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "L/Q!_Q_\ A[_L)C_T
M1-6Y6'X@_P"/_P /?]A,?^B)J -RBBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** ,-?\ D>Y/^P8G_HUJW*PU_P"1[D_[!B?^C6K<H **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH S=>U&;2M'FNX(DEF5HT1)&(4EG5>2.WS55W^*O^>&C?]_I?_B:/%__ "+D
MO_7>W_\ 1R5N4 8>_P 5?\\-&_[_ $O_ ,31O\5?\\-&_P"_TO\ \35>UU'6
MM4DN;NR:SCLX+I[<02HQ>0(VUF+YPO(; P>,55N?'D%K:_:Y-.N3:RAC:R*R
MGS]O7 [>HSUH';6QI;_%7_/#1O\ O]+_ /$T;_%7_/#1O^_TO_Q-9EQX]AM&
M,5SITL-RL_DM'),BJ/E5P=Y.W)#C ]<TZ^\:B*TEG@L9/LY9X8;IB"AF7.5*
M@YQD$9H$:._Q5_SPT;_O]+_\35*]L?%%[=Z;<%-'4V-P;@ 2RG>3%)'C[O'^
MLS^%5)/&T_V.[6VLFN;NW1Y), *L:@E03D_-D@].>*?J?CB33ECA;3R9YXV\
M@F9!YCK&7/R9W!>.OT]: ZV-7?XJ_P">&C?]_I?_ (FC?XJ_YX:-_P!_I?\
MXFL5/B/I\$D,-^J0R8C6?]^F4D=00 F=S#D<CI6EI'B&[U;69K8V1MK?[$ES
M"9""S[F8 \'I@#CK3LP6JN6-_BK_ )X:-_W^E_\ B:-_BK_GAHW_ '^E_P#B
M:Q6\87T>IZ;')% +7F/4&((*2,66/;SP"R<YS]X5-'XSF@%C'>V.'O6V1.LB
MKN9@64!"=V,8R:7F&QJ;_%7_ #PT;_O]+_\ $T;_ !5_SPT;_O\ 2_\ Q-8%
MI\2K58[2/4H8X+AQ'YX^T("A<X7:I.6'3..E=3HFJOK%C]K^R/;Q,Q$>]@2X
M!QGCITH I6^I:S#KMII^I6]@([F*5U>VD<D%-O!# ==WZ5OUAZA_R..B?]>]
MU_[2K<H **** .:LM3\1:I'<7%I;:6L"7=Q;H)9I-Q$4SQY.%QSLS^-6=_BK
M_GAHW_?Z7_XFD\(_\@6X_P"PIJ'_ *635=UO4CI.D3WBQB1TPJ(3@%F(49/I
MDB@%J4]_BK_GAHW_ '^E_P#B:-_BK_GAHW_?Z7_XFJ%[K^H>&Y86UF2VN8+A
M6*&VB,;(X&0N"QW9Z9X^E1ZAX^M](\J/4K%[2X96D:.:XC7$:D?,I)^;KT'/
M!IV T]_BK_GAHW_?Z7_XFC?XJ_YX:-_W^E_^)K.OO'=M83A9K*7RI(Y'A82I
MNDV+N/R9R 1T)J]8^*%NH;]IK&:VDM+=+DQNP8O&X8J01W^5ACVI6TN'6Q'>
MP^*;RQN+4QZ.HFB:,L)93C(QG[OO2VD7BFTLH+81:,PBC6,,99><#&?NU'#J
MFKVVGQZQJ$EFU@\7FR0Q1LKPC&1ABQWG.!T%12>-3%<Q63Z1<C4)941;?S%Z
M.CLK;LXP?+8>U.P%_?XJ_P">&C?]_I?_ (FC?XJ_YX:-_P!_I?\ XFJ4?CFR
M>T:=[::-U,6(B1N8/N&1[#8^?]VJEK\1K&^PEI;?:+AVC$445Q&Y97) )(/R
M\CD'D9I>0/3<V-_BK_GAHW_?Z7_XFC?XJ_YX:-_W^E_^)K,_X3F*7[4BVS0O
M;R1H^YU=AND5""F01][@GCO1=>/8;2*.633+HQW!'V0AE/G@R+&<<\<N#SVH
M6H&GO\5?\\-&_P"_TO\ \35/5M3\3:1HU]J<MKI$D=G;R7#(LTF6"*6('R]>
M*U](U7^U8)F:V>WE@E:&2)R#AA[C@U3\:_\ (A^(O^P9<_\ HIJ -VBBB@ H
MHHH **** "BBB@ HHHH **** "BBB@#,U_4;C3-,6>UBBEGDN(+=%E8JN9)5
MCR2 3QNS^%5M_BK_ )X:-_W^E_\ B:/%?_(+M/\ L)V/_I3'6Y0!A[_%7_/#
M1O\ O]+_ /$T;_%7_/#1O^_TO_Q-00ZAK6I37-S8M9I:VUPT/V>6,EY=IPQW
MAL+[<&JEYX]@LK<W+Z;<M;/N%M(K*?/*L%( SQUR,]<4 :6_Q5_SPT;_ +_2
M_P#Q-&_Q5_SPT;_O]+_\369=>/(;*46]QI\D5QYIC9))D4# !X8G!)!&%SDT
MNK>-?L=E>3064GEHLT<%RY!1ITC9]I4'./E/-'2XTKNQI;_%7_/#1O\ O]+_
M /$U2O['Q1?3V$K)HZ?8[G[0 )93N.QTQ]W_ &\_A5*[\;W$6CZA+:V;7-Y:
MP33-@!5C"@X)&?F&>P.:-;\=S:59W 73_P#2A:R2P%Y4P[(FXY7.X+[]Z+"6
MMO,VM_BK_GAHW_?Z7_XFC?XJ_P">&C?]_I?_ (FLE_B+IEK>&UO0D+Q@+/\
MOT+))LWX"9W$8[@8K1TK7;[4]5GMI+$V:"U6>(2$,QW$X)P?IQ0*Y+O\5?\
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
M*** "BBB@##\5_\ (+M/^PG8_P#I3'6Y6'XK_P"07:?]A.Q_]*8ZW* .<O=
MTZ;5&MGU&[A2^W32Z?&ZB*XVX#$Y4L!RN0K 'N#S5";POH$UK/-+J-R;&V=P
MD9D41VK;@S;/ESDD <D]2!C-:>LI<6NO:;JT=K-<P00S02I NYQO*$$#N/DQ
M^-9PL;F3PQ>6UQI<L[W<S7/D"0QE5,@(PPZ.!\P'J.M'3^OZV!]"4:3I/B/[
M7-9ZK>H)G_TF.,J P*@;621#C('7 ;T(I)?"&BW%Q/8&\N_*$;2"R$@V1%T,
M9D'RYS@GJ2,\XI_AO[;#=W4EQ%?2P3,B137ENB7'0Y#; ,H.Q//UIU[HVH7G
MBJXN8-3O].A-HB![9(6$C;FX/F1OT]L=:-MA7MJ1'P?I&J:;(UKJ%['!>1.D
MLD$B@RQOU4DJ<#TQ@^]4Y/"7AV>S6^DU.\:QN=RQC>H0^>/+(!";CG=QDG!Z
M8'%8]EH.JPPVL4MA=/J2O;FVO3@""-6'F*2.F1NR .<U%%X?OUM--BNM'N9K
MR-[(PS 9%NB.ID4G/'0DCO\ A30]EIT.PM_"EA,!-]NOI;>= 9H7*(MP=NW<
MX"!LD=0"![5=TCP[#I-T]R+Z]NI&B6$?:75MB+]T#"CIZG)/<FN'T3POJ,%G
M'=364L>HQS6OERN<E%" /CGIUSZUEVEDFH,EM;V\[WD%D%U&6!5G6><,-Q==
MV) 3DD9!(^E'4&EL>AW'@O2;FWU*%Q/LU&Y6YFP^,,,<+QP#@Y'^T?6JH\+Z
M-K=])JD%]=/&;G<T<;*$\V/]V>2N[^'!&<<<#O5KPG-+#I4&G7-I]EN(D9Q$
MJL%";R%P&+%>/X<G;T[5QD?A2_F2_:XTZ4NL-^]MGM*UR[QD<_>P00::2O;^
MOZT"^E^O^9V%MX,M;0P>5J.HJ(XTB<!T'G*GW Q"9&!QE=I('.:VM-T^'2M.
M@L8"YB@7:I<Y./>N4T*SEL-8NKC4-)O)=1,TC?;DSM:$D;$Z\X&!C'!!/>NU
M'(I,2[&'K/\ R,/AS_KYF_\ 1$E;E8>L_P#(P^'/^OF;_P!$25N4AA1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5AZ[_ ,AGPQ_V
M$G_])+BMRL/7?^0SX8_["3_^DEQ0!N5#=W<%A9S7=U((X(5+R.>B@=34U9'B
MJWFN_"NJ6]O$TLTENZI&@Y8XZ"@<5=I,L:=K6GZJSK9W&]T +(R,C 'H<, <
M>]5)/#5I+KBZHUQ=9$BS&V#CRFD52H<C&<@'IG'?&:Y?Q%9:OXAVW6FV=S:"
MWMA#(+B(AI@98V90H8$C:C=QG=C-9<GA_4X[:"5+&6<J[&WM6L"D,?(("@2E
MX#GHX/'I3ZBZ'<ZAHNDV^D:W]H=K:VOHW-W*IY4%<$C@XXYZ&I-)TB*&X%])
MJ%YJ,ZH84ENPBF-<\A0B(.2.N,G'6N O]'UB\N[Z2#0GM3-97<,VP,S3.<;,
MR,WSCKCCCI4TOA;4+B+6)I=/F:Y2TD-BQ/*S>:[*5YX;E<'WII; ]OF==J/A
MW388KJ>ZO[N'2V8SW5GYB^0YSDD_+N /=0P![@Y--/A+3KN2ZV7VH+"9C(L"
M2!8X9LABZC;R<X/S;AUXY-<3KGA_4]5N+W9X?*+);W*3?(7,[Y!C)=F^;IP,
M84\"M*31[@W-S)=:+=7&G2/)]EMD3!B<JFQL9^7&, _PXI=+_P!?UV#=G1W/
M@FTO(E6XU+4G<JZ22%X]TBN,$8V83_@ 6G:7X>TBS/V.WNYY)+*Y2Y<.PR'\
ML(,X4#!49XKG?#OAK5+*>SO+ZWD?4UU#_2+G.2T7D ,<_P!TN/SK;5I+7Q)K
M45QI=Y/;WPB5)$@WQD;2IW'TYYIN\=B;WM<Z'^U+(Z?%?BY0VLNSRY>S;B N
M/J2*MUY'I_ANZ@TG3K670+C[3"+1875 %@V./-[\9(+?[6:]8@E\Z,MY<B88
MKB1<'@XS]#CBAI+8I[DE8=I_R/.K_P#8.LO_ $9<UN5AVG_(\ZO_ -@ZR_\
M1ES4@;E%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 8?B_\ Y%R7_KO;_P#HY*W*P_%__(N2_P#7>W_]')6Y0 A )!(&
M1TI:** ,[6=1;3;2-HU5IIID@B#=-S''-<EIOC:^FU"!+BYL)5ENY;<VL5G+
M'(@4L ?,+E6/R],#.:Z[5]..I6B(C*LT4J31,W0,IR,UCIX)MRGD3ZKJ,]EY
MK3K9N8A&CL2<AEC#\$G&6-"_K^OO!E2X\=/]L%E;Z9+]L2:%7@=D9FCD+ $%
M6PI^4\-T]*M77C:"TTZ.^DTZZ$&"9F+(OE$-M(Y;YCGLN:-/\":?87\=Z+V^
MFF3RQF0Q@$1EBH(5!_>/N>_/--O? &FWI?=>W\:2(R2HC1X<%BPY*$K@L?ND
M9[YIAU\AO_"<1>:1'H]Z^]96C8; )!$0'_BXQD'GKVI]QXZL[2>V6:RNEANE
M)AE^4ER(S)@)G=T!YQBKL?A6QB6$":Y/E1SQ@EEY$I!;/R]?E&/ZUG1_#W38
MKB"5;_4L6\GF1()$&QMA0G<$W'(8]3QVQ1H"VU)[?Q:+NVL[V*W"6LMVMK+N
M=7(+\(P*DC[Q (Z\]L5T]<S#X0CMWA5;N:>,W:W=R\^P/(4'[M0$55 #8.<9
M^7OFNFHT_KY?\$04444AF'J'_(XZ)_U[W7_M*MRL/4/^1QT3_KWNO_:5;E !
M1110!A>$?^0+<?\ 84U#_P!+)JW:PO"/_(%N/^PIJ'_I9-6[0!RJ>(+_ %&Z
M%OIB6L1GN)XXIIXV<*L)V,S*&7<2P( !''>I=0\27>@:<)M7L1*R;VEEM758
MP@/#8=LY(YV@D_6GIX654DC2[FM3'=27%I<6Q7S(O,.YU(=64C<6Z@\$>E5K
MSP#I]]$4EO\ 40SHZ3R;T9I]^"2Q9#@\#&W;@#'3BA ]QUSXTL+*P2X2RN':
M21U:",*'4J0"QY[Y7_OH4Z'QDDDPBDTF^B;SGMVSL.)57=MX/.5YR.*BA\&I
M+J.I7-Z^U+A(H8EA?)"ICYSE0 [;5!P.BCFKU[X2L+Z*6.2:Z427+W)*. 0[
M)L...F/UIZ?U_7J"_K^O4SE\>PM=_8DTJ[>^\TQ&!)(VP?+,@)8-CH#WXJ[?
M>(_+T+3]5LHEVWEQ!&5E4Y"NP4]#U J'3_ UAI^IIJ(O;Z:X4AB93& Q$;1Y
MPJ #Y6[8&0/?.@WANS;1[/3#+/Y-I+'+&P8;B4;<,G'KZ8IZ?E_P1*_4RH?&
MRWWEFSM65?M<<+>858E6W9P%;*M\O1ORI&\>P)>&R;3+O[9YD2+"KQL6$FX*
M3AL+]TY!P:L?\(/8/<O<3WM]/*S JSN@*J"3MRJ D<]6RWO45EX!TZROX+S[
M=?S30F,KYAC (C+%00J#IO/N>YJ5Y@^I!?\ CIETJZGT_3)Y)[:+?.)-NV Y
M*@-A@6Y!^[FK:>+OMHU**QM3Y]G&SYE9</M/(*AMRY[$CWYI+GP-8W"W")?Z
MA;QW((N4A=,3#<6 .4)&"3TQZ'-27'A-?M%W>07UP]U+"\$7V@J4A5R-Q!"A
MFZ<!B>F!BCH-&]:7,=[9P747,<T:R+]",BLCQK_R(?B+_L&7/_HIJV+6WCL[
M2&VA&(X46-!Z # K'\:_\B'XB_[!ES_Z*:F[7T$KVU-VBBBD,**** "BBB@
MHHHH **** "BBB@ HHHH P_%?_(+M/\ L)V/_I3'6Y6'XK_Y!=I_V$['_P!*
M8ZW* "LK5]4ELKFTM;=8S/<>8Y,F2%C1<L< ]>5'XY[5JUG:CIIN[ZQNXR@D
MMF96#]'C<88?7H1]/>@$8=WXNFT_P_H^K7$".ES \]RD:G.%@:0A,GU7'.:C
MO/&\D<,HBTZ:.ZCB>003!3O B,BG<'P.GN>W%6I/!%E-;26L]_J$UKY$D%O"
M[1[;974J=A" DX.!N+8JU<^$]/NKQKF62XW-$8BH8 ;?+,?IGH3^-$M4[#5O
MZ^7_  3,M/B#I\ES#;749@E(5)6,B820INV[=Q;&.^,>]7=&\27&KZTUN;![
M:U-HMS$9<;W#-@'@D 8['FFVG@JQM)UD^VWLJ8_>12>4%E;;MW,50-G'8$#V
MJUH_AF#1[PW*7U[<MY MXUN'0B.,'(4;5!X]3D^I-5I=DZV,&7Q?JUO+=>=!
M:^8BS,M@\31RJ$#%6\QFVR [<X &,]ZG;QBMA;6AET:2&>[C4KM:-0TI3?M
MW9(]^GO5\^#;-V"37M]-9H7,-I(Z&.$L""5.W?T8X!8@9X%5(_A]8+/#++J>
MI3^4Z2!9&BY95V9)$8/*\8SCN #4="M+E>S^(EGY&GC4+?R;F>W@DGQ(@$9E
M'R@ MN8'VSC/-6X/&B7^DWE_9VK*EH!(XE926CSSPK95L9.&&?:GVO@:RM&M
MC'J%^?)CCC;)BS,J?<#$(",#CY2N0.<T/X-C6*["7US/)=H('>Z*$I#NR5!5
M06..,N2?>K=KDJZ2ON=,C!T5UZ, 13J1%"(JKP%&!2U(T8>L_P#(P^'/^OF;
M_P!$25N5AZS_ ,C#X<_Z^9O_ $1)6Y0 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %8>N_\ (9\,?]A)_P#TDN*W*P]=_P"0SX8_
M["3_ /I)<4 4O%'B:ZTE;Y;$6X>SM4GE>=&< N^U!A2"?NN3SV%4K#QK-YTE
MM*(M3F-Q'!"UE ;?<71GY21S@#8><X-:^K^&EU:[N'-P\,5W;+!.8L;P4;<C
M+D$<98'([CTI(/"=NE_%?W6H7U[>1RK()Y_*!.U755(1%7:/,8\#.>]"#K_7
M;_,QH?'-TUQ<"6RV6T30*)1&"27F,9&T2>W7V)P>!4Q\=-=6]G/I^G22>=>K
M;F(NC,RLCL,8;"ME1G=TYR*O?\(38>;N6[OE4M&[('3#,DOFJ<[<CDD<$<'U
MP:=:>#+*UOH[Q[V]N+B.995>4QY^564*=J#(PYY.6/&335K?UY!U?]=Q]QXA
MF;PXFLVEMB.*4?:H9ERZ1AMLF,'&5&3W!Q535/%YTNXN+AXQ)I\*O_JTW/(4
MC+M@E@!V[&MZRTRWL;%[-"SQ.SLWF8.=Y)(Z=.:R[KP=IEUHT.EE[B.WACDC
M4HXW$.I4DD@Y.#2![D,GC$0RJDFDWB@3102ON0B)Y&"J#AN>H)QTJOI_CN*Z
M%N&L;EE;[.LMPJJJ*TW"_+N)ZD#OBEU7PK>W^OQ30S_9]/\ /AGG59\^:T;!
MAE/+X/ &0X'L:N6G@S3K.U-O'-=%"UN^69<YA(*_P]\<_P!*J-NO]?UJ)WM_
M7]=B+6_%AT/6C;S0B2V^S"4;>&WE]O+$A0ON?SIJ^+99)@T6GO+$]NLJQJR;
M@2Q!RY;9MXZYK1U+P[!J5\UY]KN[>X,(A#P,O W;LX92#]""/:LS_A =.6*%
M8KV^CDBY$JF,DG<6)*E"G)8\;<#L!4C?D06GQ$LKU1)!IUX\*JAFE!3;%ND:
M/^]SAE/3/'-)>^//LUS!(NG3'3G,P\\@$R[#CY?FX&[NPZ<U;T_P'I>G6ES;
M0W%XT=QMW;W4D8D:08^7^\QZYX_.G'P3:?:!(FIZG'&AD,$*2($@+G+;?DR>
M><,2.W3BGI<9-9^)3>MITRP!+:\=X3EE<JXY!#*2I!P>E26G_(\ZO_V#K+_T
M9<U#8^%8]/N;4QW$DL44SW,CR[0\LS *#A%50 /0#^=36G_(\ZO_ -@ZR_\
M1ES0R3<HHHI#"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH I:MIL>KZ9+9232PK(5820[=ZE6# C<".H'4&J']@ZE_T-NL_]
M^K/_ .,5N44 8?\ 8.I?]#;K/_?JS_\ C%']@ZE_T-NL_P#?JS_^,5N44 8?
M]@ZE_P!#;K/_ 'ZL_P#XQ1_8.I?]#;K/_?JS_P#C%;E% &'_ &#J7_0VZS_W
MZL__ (Q1_8.I?]#;K/\ WZL__C%;E% &'_8.I?\ 0VZS_P!^K/\ ^,4?V#J7
M_0VZS_WZL_\ XQ6Y10!A_P!@ZE_T-NL_]^K/_P",4?V#J7_0VZS_ -^K/_XQ
M6Y10!A_V#J7_ $-NL_\ ?JS_ /C%']@ZE_T-NL_]^K/_ .,5N44 8MIX?D@U
M6#4+K6]1OY((WCC2X6!54/MR?W<2DGY1U-;5%% !1110!ST/ABXM3,MGXDU>
MVAEN);CR42U94:21I& +0EL;F/4FI?[!U+_H;=9_[]6?_P 8K<HH P_[!U+_
M *&W6?\ OU9__&*/[!U+_H;=9_[]6?\ \8K<HH P_P"P=2_Z&W6?^_5G_P#&
M*/[!U+_H;=9_[]6?_P 8K<HH P_[!U+_ *&W6?\ OU9__&*/[!U+_H;=9_[]
M6?\ \8K<HH P_P"P=2_Z&W6?^_5G_P#&*/[!U+_H;=9_[]6?_P 8K<HH P_[
M!U+_ *&W6?\ OU9__&*/[!U+_H;=9_[]6?\ \8K<HH P_P"P=2_Z&W6?^_5G
M_P#&*KWOA6ZU&PN+&Z\5:S);7,30RIY=H-R,"",B#(X)Z5TE% !1110 4444
M %%%% !1110 445R>CS>+-8T:SU)=5T6%;J%9A$=*E8H&&<9^TC/UP* .LHK
M!^R>+O\ H-Z)_P"">7_Y)H^R>+O^@WHG_@GE_P#DF@#>HK!^R>+O^@WHG_@G
ME_\ DFC[)XN_Z#>B?^">7_Y)H OZQI::QI_V1KF>V(ECF2:#;O1HW5U(W*R]
M5'4&J7]@ZE_T-NL_]^K/_P",4W[)XN_Z#>B?^">7_P"2:/LGB[_H-Z)_X)Y?
M_DF@!W]@ZE_T-NL_]^K/_P",4?V#J7_0VZS_ -^K/_XQ3?LGB[_H-Z)_X)Y?
M_DFC[)XN_P"@WHG_ ()Y?_DF@!W]@ZE_T-NL_P#?JS_^,4?V#J7_ $-NL_\
M?JS_ /C%-^R>+O\ H-Z)_P"">7_Y)H^R>+O^@WHG_@GE_P#DF@!W]@ZE_P!#
M;K/_ 'ZL_P#XQ6;JECJ]C<Z5'%XKU8K=WGD2;H;3A?+D;(_<=<H/UK0^R>+O
M^@WHG_@GE_\ DFJEYHGBF^FLI)-=T<&TG\]-ND2\ML9,'_2>F'/Z4 7?[!U+
M_H;=9_[]6?\ \8H_L'4O^AMUG_OU9_\ QBF_9/%W_0;T3_P3R_\ R31]D\7?
M]!O1/_!/+_\ )- #O[!U+_H;=9_[]6?_ ,8H_L'4O^AMUG_OU9__ !BF_9/%
MW_0;T3_P3R__ "31]D\7?]!O1/\ P3R__)- #O[!U+_H;=9_[]6?_P 8H_L'
M4O\ H;=9_P"_5G_\8IOV3Q=_T&]$_P#!/+_\DT?9/%W_ $&]$_\ !/+_ /)-
M #H/#TJZE:7MWKNI7QM69HHIUMU0%E*DGRXE)X)[UN5@_9/%W_0;T3_P3R__
M "31]D\7?]!O1/\ P3R__)- &]16#]D\7?\ 0;T3_P $\O\ \DT?9/%W_0;T
M3_P3R_\ R30!O45@_9/%W_0;T3_P3R__ "31]D\7?]!O1/\ P3R__)- &]16
M+H-[J4]UJEGJ<UI-+9SI&LMM;M"K*T:ORK._/S$=:VJ "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ K-UC1QJPLV6^NK*:TG\^*:V$98,4>,@AT8$;9&
M[>E:5% &'_8.I?\ 0VZS_P!^K/\ ^,4?V#J7_0VZS_WZL_\ XQ6Y10!A_P!@
MZE_T-NL_]^K/_P",4?V#J7_0VZS_ -^K/_XQ6Y10!A_V#J7_ $-NL_\ ?JS_
M /C%']@ZE_T-NL_]^K/_ .,5N44 8?\ 8.I?]#;K/_?JS_\ C%']@ZE_T-NL
M_P#?JS_^,5N44 8?]@ZE_P!#;K/_ 'ZL_P#XQ1_8.I?]#;K/_?JS_P#C%;E%
M &'_ &#J7_0VZS_WZL__ (Q1_8.I?]#;K/\ WZL__C%;E% &'_8.I?\ 0VZS
M_P!^K/\ ^,5/I>B'3KZZO9M3O+^XN8XXF>Y$0VJA<J (T0=9&ZYK5HH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** *6K:DFD:9+>R0RS*A51
M'#MW,68* -Q ZD=2*H?V[J7_ $*>L?\ ?ZT_^/T>+_\ D7)?^N]O_P"CDJUX
M@O)M/\/W]Y;C,T,#.@]P.* *O]NZE_T*>L?]_K3_ ./UG>'[W5]*\/:=I\_A
M756EMK=(G9)K0J2  <9F'%94E[K-MH&N0K=R6M_!;)=[FN#= (P;!1BJE6)4
MY'(';-&N:CKVE7<>I"29K-[=0A$@*?ZL[LIG)?=\V<8P.O:FU8%J=-_;NI?]
M"GK'_?ZT_P#C]6M'U?\ M87BM8W-E-:3^1+#<&,L&\M) 049@1MD7OZU%X<U
M2+5=)5XUN5>$^3*+G'F;@ <G:2.00>#WJ+0O^0QXG_[":?\ I);4-6$G<W**
M**0PHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@#G;7Q1=7U
MLES:>&-7F@?)2026H##.,X,P/YBIO[=U+_H4]8_[_6G_ ,?JOX=%P? EH+65
M(I_(.R1TW!3D\XR,US=I?ZCJ&FV_VC4[J-[?2FNQ+')L,LOF$9;'! "CCI\U
M']?G_D']?U]YMV%[J]KJFK73^%=5*7DR21A9K3("Q(AS^^]5-:/]NZE_T*>L
M?]_K3_X_7)0ZCK%[;V^HPW\\=]<WSV8MFD/E;?*8CY3P"" V:--\2WVEZC#:
M:P+]H[?S&8!TD8<J"9&W8*IO7A23EQQ\IIVUL#T5SL+/7Y+C5XM-NM&O["6:
M&2:-KAH&5@A0,/W<C$']XO4>M;-8=Y_R/&C_ /7A>?\ H=O6Y2 **** "BBB
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 Q/%J22>')
M_*AEE9987V11EV(65&.% )/ )P*8_BC398VC>RUAD8893HUV01_W[K>HH Y.
M'4/#EO:3VL6D:JL%P")4_L:[.\>AS'TIZ>)/#^H6UO.ECJ=Q!Y?[EQHUTR[&
M&./W?0BNIK#\&?\ (DZ)_P!>47_H(H K6&MZ)IEL+:RTW5H(02VQ-&N^IZG_
M %=3>&9#<W>OW@@N8H;C4%>+[1;O"S*+:!"=K@'&Y6'3M6_10 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 <?X?URWTWP_:V-Y8Z
MNL\2E)%72;EQG)[B,@_@:2>?PO<Q6\4NBZFR6X(B7^QKL;03DC_5],]J[&B@
M#CH-6\+'6);V'3-2-_"=LCKH]V60E1U'E\$J1^!J2:^\-W#1--HVIN8I#*A.
MBW?#GDG_ %?L/RK1T;_D8?$?_7U#_P"B(ZW* .8AOTU;QCI\]M:Z@L,%C=+)
M)<6,T"@L\&T9D4 D[6Z>E=/110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%<EHVF7&K64MY<:UJJNUY=)MBG"JJK.ZJ ,=@HK1_X1
ML_\ 0<UG_P "1_\ $T ;E%8?_"-G_H.:S_X$C_XFFMX>"??U_6%^MT!_[+0!
MO45@'0$7&?$&KC/3-V/\*/[ 3=M_X2#5\^GVL?X4 ;]8?@S_ )$G1/\ KRB_
M]!%-/AT!@IU[6 QZ#[4/_B:BM?"4%C:16MOK.KQ00H$1!=#"J. .E '1T5A?
M\(YG_F.ZSZ_\?0_^)H_X1LYQ_;NLY_Z^A_\ $T ;M%8?_"-G_H.:S_X$C_XF
MC_A&S_T'-9_\"1_\30!N45A_\(V?^@YK/_@2/_B:AN_#[PV<\J:YK.Y(V89N
M1U _W: .BHK/T*>6Z\/:9<3.7EEM(G=CU9B@)-:% !1110 4444 %%%% !11
M10 445AWFKZF-<GTW3=,MKDP6\4\DD]X8?\ 6-(H  C;/^K/IUH W**P_MOB
M?_H!Z;_X-'_^,4?;?$__ $ ]-_\ !H__ ,8H W**P_MOB?\ Z >F_P#@T?\
M^,4?;?$__0#TW_P:/_\ &* -RBL/[;XG_P"@'IO_ (-'_P#C%'VWQ/\ ] /3
M?_!H_P#\8H -&_Y&'Q'_ -?4/_HB.MRN4LH_%%IJ.IW1TC3&%Y*D@7^TG&S;
M&J8_U//W<_C5_P"V^)_^@'IO_@T?_P",4 ;E%8?VWQ/_ - /3?\ P:/_ /&*
M/MOB?_H!Z;_X-'_^,4 ;E%8?VWQ/_P! /3?_  :/_P#&*/MOB?\ Z >F_P#@
MT?\ ^,4 ;E%8?VWQ/_T ]-_\&C__ !BKFB:D^K:6MU+;BWE$LL+QK)O :.1H
MSAL#(RI/04 :%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!A^$O^0$W_
M %_7G_I3+6Y6'X2_Y 3?]?UY_P"E,M;E !7(>*].;4_$&C0+;:?.0LQVW\'F
MQ]!VSUKKZJ:GJ$.E:=->SABD8^ZHR6). ![DD"@+7T/-+K3-.T+6TLM3OO#?
M%IO4ZS&NP;I7;;$&8849P!SP!3-0TW[1/X@U"WL])FLUNH0UU';[IH8_L\/S
MPL#C:!R/QKOEUZ:U61]8T]K&)5WI(K^<K<X"_*,[_P#9 .>V:BG\:Z!;6R7$
MEY)L8.2%M969-F-^]0I9,9&=P&*:=OZ\[C[G.6DN@QS72ZR1/K9O&:WQS<21
M%@8C#W*[-N=O&0V>]7_&$#-?VUNL<A368Q83%1R,-N!)'3Y3(/QK87QAH;V[
M3+=2$*P7R_LTOF-D9!6/;N8$ D$ @@&@^,-"R0MZT@$:REHX)'4*WW?F"D9/
M8=2> *'YBONT<5;7[VEE)-=W-Q9_8W31UF#+'RA8L=[<*&R@SZ@"LFTUS5?-
MN-2%_(;R:QMT/F3!%$:W$JR/G;QM&W+;>-V2.:[^3QWI7VJ*" 3R;X99"[V\
MJ+&495*OE,J?FZ$9''J*MS^,=!MFF6>_\L0ABSF)]A*_>"OMVL1W"DD=Q1=[
M_P!>?XCV.?\ "]]J>J:Q;)<:H9+6."25#;R^8DP$@"EG*+OX)&0,'UKO:HZ9
MK%CK$4LEE*SB)]CJ\;1LIP",JP!Y!!''(-7J.EB>K857U#_D&W7_ %Q?^1JQ
M5?4/^0;=?]<7_D:0RGX:_P"16TC_ *\H?_0!6I67X:_Y%;2/^O*'_P! %:E
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
M9N4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% &'X2_P"0$W_7]>?^E,M;
ME8<W@SPM<SR3S^&M&EFD8O)(]A$S.Q.222O))[TS_A!?"/\ T*NA_P#@OB_^
M)H WF574JP!4C!![BLS_ (1S2'M;2WN=/M[M;/\ X]S=1+*T6.FTD<8X'X54
M_P"$%\(_]"KH?_@OB_\ B:/^$%\(_P#0JZ'_ ."^+_XF@#6?3K)_,WV=NWF.
M)'S$IW,!@,>.3@ 9]*KSZ!HUTKK<:183*Z+&PDMD8,B_=4Y'('8=JH_\(+X1
M_P"A5T/_ ,%\7_Q-'_""^$?^A5T/_P %\7_Q- &A/HFDW,D$D^EV4KVZ[86D
MMT8Q#T4D<#@=*??Z3INJI&FHZ?:7B1MN1;B%9 I]1N!P:S/^$%\(_P#0JZ'_
M ."^+_XFC_A!?"/_ $*NA_\ @OB_^)H O76@:-?2>9=Z187#X5=TMLCG"G*C
M)'0$\>E#:!HS*RMI%@0T7DL#;)S'G.P\?=SSCIFJ/_""^$?^A5T/_P %\7_Q
M-'_""^$?^A5T/_P7Q?\ Q- %_P#L'1RUHW]DV&;/BV/V9/W'^YQ\OX5/9V4-
MC&Z19_>2-([,<EF)R2:R?^$%\(_]"KH?_@OB_P#B:/\ A!?"/_0JZ'_X+XO_
M (F@#?JOJ'_(-NO^N+_R-9'_  @OA'_H5=#_ /!?%_\ $T?\(+X0_P"A5T/_
M ,%\7_Q- %OPU_R*VD?]>4/_ * *U*;%%'#$D42+'&BA411@*!T '84Z@ HH
MHH **** "BBB@ HHHH *P[3_ )'G5_\ L'67_HRYK<K#O-'U%M;FU+3M4AMC
M/;Q021RVOF_ZMI&!!WKC_6'\J -RBL/[!XD_Z#UE_P""T_\ QVC[!XD_Z#UE
M_P""T_\ QV@#<HK#^P>)/^@]9?\ @M/_ ,=H^P>)/^@]9?\ @M/_ ,=H W**
MP_L'B3_H/67_ (+3_P#':/L'B3_H/67_ (+3_P#': -RBL/[!XD_Z#UE_P""
MT_\ QVC[!XD_Z#UE_P""T_\ QV@#<HK#^P>)/^@]9?\ @M/_ ,=H^P>)/^@]
M9?\ @M/_ ,=H W**P_L'B3_H/67_ (+3_P#':/L'B3_H/67_ (+3_P#': -R
ML/PE_P @27_L(7W_ *52T?8/$G_0>LO_  6G_P".U<T736TG3%M9+C[1)YLL
MSR!-@9I)&D.!DX&6/>@#0HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
2BBB@ HHHH **** "BBB@#__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>11
<FILENAME>cwco-20211231xex10d10001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 cwco-20211231xex10d10001.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" .. MP# 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#W=U82(5!*
M@\_-4AIF\1PAY#@ ?,33E974,I!![B@!:,444 %%%% !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 M%%)0 444M !1110 4444 )WI:2EH ***2@!&574JPR#U!H2-(T"(H51T I
M(G,BABA0^C=:<"#T(/TH 6DI:2@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "EI** "EI.
M]% !1110 M%%% !11WHH ****  4U$5 0O<YJ-$:VM=H+S,J]SRQJ.QN9[FW
M$EQ:/:OG'ELP8_I0!:HHHH 2BBCM0 444E "T4F:6@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHI: $HHHH **** "BBB@ HHJGJ=]_9UA)<B(S.O"1*<&1CT4'MF@"Y17
M+'6?%XZ>$H#_ -Q)/\*/[:\7_P#0GQ'_ +BD?^% '4T5RIUOQ?\ ]"='_P"#
M2/\ PI?[;\7=_!R?^#2/_"@#J:*Y?^V_%O\ T)J?^#2/_"C^V_%O_0FI_P"#
M6/\ PH ZBBN8_MOQ9_T)J_\ @UB_PI/[;\69_P"1-7_P:1_X4 =117,?VWXK
M_P"A-7_P:1?X4G]N>+,?\B:,_P#84B_PH ZBBN7.N>*QT\&?^52+_"D.O>*P
M?^1*8_\ <3B_PH ZFBN5.O\ BH#_ )$J0_34HO\ "C_A(?%'?P5-_P"#"+_"
M@#JJ*Y8^(O$@(SX,N,>U]'_A1_PD7B/(_P"*-N<?]?L?^% '4T5RW_"1^(>_
M@ZZ_\"XZ</$6O]_!]V/^WJ.@#IZ*YD>(M=.,^$+L>O\ I,?%*/$.N<9\)78]
M?])2@#I:*YO_ (2'6\?\BG>9_P"OA*4>(-:QSX4O ?\ KX2@#HZ*YP^(-8'_
M #*UX?\ MNE(/$6L=_"E[_W^2@#I**YH^)-7!_Y%2_Z?\]4H_P"$EU;//A34
M,8_YZ+0!TM KF6\3ZJ <>%-2/IAEI#XIU0?\RGJG3U6@#IZ*YG_A*M1SSX4U
M;IZ+2_\ "4WV?^17U?\ [X% '3=J2N;'BF[SSX8U@#_KD*/^$INO^A9UG_OR
M* .DI:YP>*+@D?\ %-ZR.>?W%'_"43Y_Y%W6?^_% '1TE<^/%$QZ^'M9'/\
MS[TI\328XT#6>O\ S[?_ %Z .@HK 'B:3./[!UD#./\ CV[>O6E'B5N^AZS_
M . I_P : -[O16#_ ,),W?0]9_\  4_XU-IOB*#4=3DTXVEY;720"XV7,.S*
M%MN1^- &Q24M% "4=:*6@!*2EHH *2EHH 2C%+10 F/2EHHH *,T44 %%%(*
M %HI*7- !1110 &BBB@!*6BB@ HHHH **** "BBB@ HHHH **** "BBB@ HI
M:* $HHHH #1110 4444 %%%% !1110 4444 %8T+?VQJK3'=]CLVQ&.TDG][
MZ#M4NL73@16%LY6ZNSM4KU1/XG_ ?K5ZUMHK.VCMX5 1!@8&,^] $U%%% !1
M11GF@#@_%'C.[M[^:QTHHB6Q NKEADJW]Q1].]8ECXTUNQO96N+XW\&<A)85
M4[?12N/FQZTFO0747B&_1PR NSQ;NDBMS^(_E6)-MMXI'8[(8TV\'[G^?7_]
M5!5CVC3-1M]6TV"_M6+0SH&7/4>Q]Q5NN;\ V<UAX+L8;A2LAWR;2,$!F+#/
MX$5TE!(4M)10 4444 %%%% !1110 4444 %%%% !1110 M)12T )1VHHH **
M!THH **** "BBB@ HHK(\3ZA<Z;X?N;BS -T0$B)[,3C/OCTH O7.HV=FP6Y
MNX86/19' )_"IXY$EC62-U=&&593D'Z&O$)()+BY=Y0))PN6EG^=FSR0<]/3
M.,?2M_POJ%QH^KVL"G_0YF\J1"_RIZ%1VYH'8]2HHI:!"5S8'_%S7/\ U!5_
M]'&NEKF@?^+GN/\ J"K_ .CS0!TM&:** $%+244 +2444 %%%% "4M%% !11
M24 +124"@!:3%&:6@ I*7K10 44=!10 4444 %%%% !1110 444F: %HZ444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %1W%Q%:V[SS
MNL<48W,['  J2L:\QJNJC32";6 "6XXX9OX5SWZ9/T% #]&@>0RZG<)B>Z.5
M!Y*1_P *_P!:UJ!THH **** "DQ2T4 9NK:%8:W"([R'<R@A)%.'3/7!K*M/
M FCVMXES();IH\>6MPVX+CI]:Z>C% "4O:C%% !1110 4444 %%%% !1110
M4444 %%%% !1110 444M "4444  HHHH **** "BBB@ K.U[3#K&C7%DLIBD
M<9C<?PL.0:T:* /&KZ)[6:2&_5[>Y3'WHSMD_P!D'HPK7\+:-<ZIJ]M>M#+%
M8VY$A:08$C]E /4#^]7ICQ1R "1%?_> -.    X Z"@=PHHI:!"=ZYM?^2GR
M?]@5?_1[5TE<V!_Q<Z0_]05!_P"1VH Z6BBB@!**** $I:** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "EI** "BBB@ HHHH **** "BBB@ HHI&(52S'  R2>U %/5+XV%
MIOBC$MRY"0PE@N]CVS^OX4NF60L;7:26ED)DE<]6<]?\/PJE8J-5U :JZ$11
M!H[7/<'[S?C@8^E;- !16;)XAT>.1HWU*W#J=K#?T/I3?^$DT7_H)VW_ 'W0
M!J&BLS_A(]&_Z"=M_P!]T?\ "1:-_P!!.V_[[H TZ*S?^$@T?_H)VO\ W\%'
M_"0:-_T%+3_OZ* -*EK-_M_1\X_M2T_[^BC^W]'Y_P")K9\?]-E_QH TJ*SO
M[?T<?\Q6R_[_ *_XTG]OZ-G_ )"UC_W_ %_QH T:*S_[>T?OJUB/K<)_C1_;
MVC?]!:P_\"4_QH T**H'7='7KJU@/K<I_C2?V]HW_07L/_ E/\: -"BL_P#M
M[1O^@O8?^!*?XT?V]HW_ $%[#_P)3_&@#0I:SO[>T;_H+V'_ ($I_C1_;^C?
M]!?3_P#P)3_&@#0I:SO[>T;_ *"]A_X$I_C1_;VC?]!>P_\  E/\: -"BL_^
MWM&_Z"]A_P"!*?XT?V]H_P#T%[#_ ,"4_P : -"BL_\ M[1_^@O8?^!*?XT?
MV[H__06L/_ E/\: -"E-9_\ ;FD?]!6Q_P# E/\ &E_MO2?^@I8_^!"?XT 7
MJ*HC6=*/34[+_P "$_QI?[7TS_H)6?\ W_7_ !H NT53_M73?^@A:?\ ?]?\
M:4:IIQZ7]K_W^7_&@"W15;^T;'_G]MO^_P O^-+_ &A9'_E\MO\ OZO^- %B
MBJ_V^S_Y^[?_ +^K_C1]OL_^?NW_ ._J_P"- %B@57^W6?\ S]V__?U?\:7[
M=9_\_<'_ ']7_&@">BH!?6G_ #]P?]_%_P :?%<0S9\J:.3'78X/\J )<444
M4 )7.(<_$R7D<:,@Q_VV:NDKFHP#\2[EL=-)C&?^VK4 =)2T44 )1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5D:G-)=WL.D
M0DJ)5\RX<?PQ^@]S5Z^O8M/LWN)L[5Z #)8]@/>H=*M'@@>>X.ZZN#OE/IZ+
M] .* +L4:0Q+'&H5$ 55'0 4\=124HZB@#D_!VGVDFEW<DMI"[-?3G<\2DGY
MJZ'^S;#_ )\;7_ORO^%9'@S']BS8W?\ 'Y-U_P!ZNAH J_V;8?\ /C:_]^5_
MPH_LS3_^?"U_[\K_ (5:HH J'2M./73[3_OPO^%(=(TP]=-LS_VP7_"KE% %
M(Z-I1ZZ99?\ @.G^%-.AZ0<YTJPYZ_Z,G^%7Z* *']A:/G_D$V'_ (#)_A2'
M0-%/71]/_P# 5/\ "M"CO0!FGP[H9ZZ+IQ^MJG^%)_PCFA'_ )@FF_\ @)'_
M (5J4E &8?#>A-][1--/UM(_\*3_ (1G0/\ H!:9_P" D?\ A6I10!E_\(SX
M?_Z 6E_^ <?^%)_PC'A__H Z7_X!Q_X5JT4 97_",>'_ /H Z7_X!Q_X4?\
M"+^'O^@#I?\ X!Q_X5JT4 97_"+^'O\ H Z7_P" <?\ A1_PC'A[_H Z7_X!
MQ_X5K4E &5_PB_A[_H Z7_X!Q_X4?\(QX>_Z .E_^ <?^%:M% &5_P (QX>_
MZ .E_P#@''_A1_PC'A__ * .E_\ @''_ (5JT4 97_",>'_^@%I?_@''_A2_
M\(UH/_0#TS_P$C_PK4HH R_^$9T'_H":;_X"I_A0?#6@GKHNG_\ @,G^%:E%
M &3_ ,(OH/\ T!K'_OPO^%)_PBN@<?\ $GLN!C_4BM>CM0!C_P#"*:!DG^R+
M3D8^Y2?\(GX?SG^R;;(_V:V:* ,4^$?#Y_YA-O\ D:;_ ,(=X=_Z!-OTQW_Q
MK<I: ,(>#?#H.1I,'Z_XT?\ "'>'?^@3!^O^-;G>EH PAX-\._\ 0)A_,_XU
ME:3IUII7Q)OK6Q@6" Z1"Y12<;O-<9KLJY:WY^*=_P <C1H.?^VLE '4T4E+
M0 E<W"<_$F['II<?_HPUTE<U;;C\1[_CY1IL0_'>: .F[49HI* "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ S1110 4444 %%%9NL3S>4EE:-BY
MN3L!!P8U_B?\!T]Z *\4BZOK#2I)OL[)B@4#Y6E[G/?'3ZUM5#;6T=I;I!$N
M$08^OO4U !2CK24HZT <[X,;=HLWM=S#_P >KH:Y_P '<Z))P1_I4O\ Z%70
M4 %%%% !1110 4444 %+24M !2&EHH *2EHH 2BBB@ HHHH 6DQ2T4 )12TE
M "T4E% !1110 4444 %+24O:@ -)110 4M)2T %%%)0 M<K:Y_X6IJ/_ &"(
M/_1LE=57*VO_ "5/4\_] BWQ_P!_9* .JHHHH .]<U:X/Q&U$_-D:?$/;[YK
MI:YJT8_\+%U)<#']GQ'/<_,: .EHH%% "4444 %%%'>@ HHHH ***3- "T44
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% #)94@A>61MJ(I9CZ 5F:1!),\NIW4>R>X
MP$1L$QQCH,^_6FW+G5=1-@BM]FMR&N),X#-U"#U]36P!@8' H **** %H'6D
MI1UH Y[P=C^Q),9_X^I<Y_WJZ"N?\'9_L23)S_I4W_H5=!0 4444 %%%% !1
M110 4M)10 M%)10 4444 %%%% !1110 M)12T )1110 M)12T )10:* "BBB
M@ HHHH **** %I*6DH *6DHH 6N4M/\ DJFJ<_\ ,)M__1DE=77)69)^*VK>
M@TFW'_D1Z .MHI*6@!.]<U:8_P"%C:GZ_8(N?^!&NE[US=F?^+AZGZ"QB[?[
M1H Z6BBB@!***2@!:*** "BBB@ HHHH **** "B@T4 %%)0* %HHHS0 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M52U._P#L-KN16>=SLBC49+,?Z5<9@BEF. !DGTK*TX_VE=MJA.8 "ELI&..[
M?C0!;TZR%C:"/<7=COD=CDLQZG-6Z** "BBB@ I1UI*4=: ,#PA_R SC'_'Q
M+T_WJWJPO"/_ " 1P!^_DZ?[U;M !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111VH ***6@
M!*Y.PS_PM36>1C^S+;Z_?>NLKD=._P"2J:YTR--MO_0WH ZZEI*6@!.]<W9?
M\E$U7G_ERAX_$UTE<Y9?\E U;_KSA_G0!T=+244  HHHH **** "BBB@ HHI
M,T +1124 +2=Z/:EH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBJU]=K96<DY!8@851U9CT H IZG))=W
M,6EP-@2#=<,#RD?I^/2M-$2.-410J* % Z 52TNRDM8&DN766\F.^:11@$]@
M!V '%7Z "BBB@ HHHH *4=:2E'44 8/A#_D +SG]])_Z$:W:PO" QX?7C&9I
M/_0C6[0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%+0 F*Y#3<?\ "UM>YY_LZVX_
MX$]=?7(Z8#_PM/7SM&/L%M\W_ GH Z^BDI>E "=ZYRR_Y*#JW_7G#_.NCKG+
M+_D?]6_Z](?YT ='12TE !1110 4444 %%%% !1110 4444 %%%% "4M%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !61%NU/6/M'RFRM<K$>N^3NWT'0?G4NJSS-Y=C:$K<3]7'_+-.[?T%7;:
MVBL[6.W@0)%&NU5'84 2T444 %%%% !1110 4HZTE*.M &#X1S_PCT7'_+23
M_P!"-;M<AX=UNVT[2?LEU;WZ31RON7['*>K'H=N#6R/$=B?^6=]_X!R?_$T
M:U%9/_"16.<>7>_^ <G^%*/$-B?X+W_P$D_PH U:*R_^$@L?[EYQ_P!.DG^%
M!\06(_AN_P#P%D_PH U**RCXAT\<G[4/K:R?X4'Q%IW7-S_X#2?X4 :M%9(\
M1Z;C[]Q_X#/_ (4?\))IO]^X_P# 9_\ "@#6HK(_X273/[\__@._^%'_  D^
ME#_EI/\ ^ [_ .% &O16.?%&DCK+-_X#O_A2?\)5I'_/>7_P'?\ PH V:*Q/
M^$MT;_GXE_[\/_A1_P );HP_Y>)?^_#_ .% &W16'_PE^B?\_,G_ 'X?_"C_
M (2_1,_\?,G_ 'X?_"@#<HK#'B[1",_:9/\ OP_^%+_PEVB\?Z3)S_TP?_"@
M#;HK%_X2S1< _:GY_P"F+_X4H\5:,1_Q]-_WZ;_"@#9HK('B?1SG_2C^,;?X
M4[_A(])/_+U_XXW^% &K166/$6E'&+H<_P"P?\*>->TLG NU_(T :-%4!K>F
MDX^UI2_VSIQ_Y>X_SH O452&KZ>?^7R+_OJG?VKI_P#S^0_]]"@"W150ZII_
M_/Y#_P!]BC^U+#_G\@_[[% %NBJG]J:>>E[!_P!_!1_:FG_\_P!;_P#?P4 6
MZ*J'5=.'_+];?]_!1_:NG_\ /];?]_10!;KDM,;/Q/U]>.+&V^O5JZ+^U=._
MY_[;_OZ*YG19$N/B9KUQ#B2%K&V F0Y5B"V0#ZB@#LJ*2EH *YRQ_P"1_P!7
M_P"O2&NB[USEC_R/^L'_ *=8: .DI*6B@!M+110 4444 %%%% !1110 4G>E
MHH **.]% !1110 4444 %%)2T %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %17-Q':VTD\S;8T!)-2UBW6W5]6CM$:00V,@EGQD*[8^5/
M1AW([$"@"QI4,C>;?W"E9KDA@AZH@^ZM:5%% !1110 4444 %%%% !1110 9
M/J:,GU-%% !D^IHR?4T44 &3ZFCGUH[T4 %%%% !@>@HP/0444 &!Z#\J3:/
M0?E2T4 )M7^Z/RHVK_=7\A2T4 -V)_<7_OD4;$_N+_WR*=10 W8G]Q?^^11Y
M:?W%_P"^13J* &^6G]Q?^^11Y:?W%_[Y%.HH ;Y:?W$_[Y%'EQ_\\T_[Y%.H
MH ;Y<?\ SS3_ +Y%'EQ_\\T_[Y%.HH ;Y4?_ #S3_OD4GE1_\\T_[Y%/HH 9
MY4?_ #S3_OD4>5'_ ,\T_P"^13Z* &>5%_SS3_OD4>5%_P \D_[Y%/HH 9Y,
M7_/*/_OD4>3%_P \H_\ OD4^B@!GDQ?\\H_^^11Y$/\ SRC_ .^!3Z* (_(A
M_P">,?\ WP*/(A_YXQ_]\"I*6@"/R(/^>,?_ 'P*58T081%7_=&*?10 4444
M )WKG;'/_"?:OZ?98:Z*N=L/^1^UCK_QZPT =%12TE !1110 =Z*** "BBB@
M HHHH **** "D/K2T4 )1TI:2@ I:2EH *.]%% !28I:* "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHI&944L[!5 R2>U %'5;_[#;JL?-U<-Y5NG
MJY[_ $'6I-.LA8V20[M[_>D?^^YZG\ZI:<LM]J,NI3#$('EVJ]]O=C]:V* "
MBBB@ HHHH J:AJ5GI5J;F]G2&(<;F[GT [UA6OC[1KF\6W=;RU#C*37,.R-O
MH<G]:YKQB_G>*)#.[F.WA BCSG9W9P/7IS['WK#\P^2(SNE!?A@1\R^N/YBD
MV4HZ'M"L&4,""",@CO2UR?P^N)IM!ECEN//2&X=(G)R=G;-=931(4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 44=Z6@ HHHH *.U%% "5SMAG_A/=8XX^
MS0UT7>N=L,?\)[K'//V:&@#HZ2BEH 2BBB@ HHHH **** "BBB@ HHHH ***
M* "BDYI: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ K*U)WO+I-*BP%D3S+A^ZQYP /<D8J[?70L[.2<KO8#"(/XF["H-*M)+>W
M,UPJ"\N#YD[+Z]AGT X% %V-%CC5$4*J@  =A3J** "BBB@ HHHH Y;Q/X9F
MU!SJ&FB(:@$"%920LJ@]"1T([5R@\,^(KEFBCTP6S/PTT[H4"^P4DY_"O5**
M!W,O0-%AT'2X[*)VD()9Y& RS'J:U*,44""BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHP?2@ HHP?2B@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ I:2EH *2EI* %HHHH 2N=L/^1\UCG_EVAKHN]<Y8#_BO
M]9X_Y=8>: .CHI:2@ HH%% !1110 4444 %%%% !111WH **** $HI:* "BB
MB@ HHHH *,444 %%%% !1110 4444 %%%% !1110 4444 %%%9NK3RE4L+5R
MES<Y"N/^6:_Q-_A[T 5X'_M?5O/4,;.T)6,GI))T)]P/YUM5%;P1VMO'!$,)
M&H4"I: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBJE
M]J-OIZ SL2[?<B0;G<^@% %NJMYJ-GI\9>ZG2(>A/)_"LV/^V]5^=F_LJV)^
M5<!IF'^UGA?I5VVT6PM9S.D&^<XS+*2[\=.3TZF@")M7DE"&ST^YG5P2'(\M
M1Z<GUI(SKTP!D%C;*1ROS.ZGV/0UJT4 8AT;49XBEWKUTXSUAC6(X^HJ&S\+
M&U1E?7-7GR<YEN"2*Z&B@#GF\+2&[\]=>U95_P">0G^6K,>FZO;R+Y6LM+$H
MY2>%22?J.:V** ,DW&MP8,MG;7(R=QMY"I ^C=33GUZTM\_;5GLU 'SSQE5)
M/8&M2D95=2KJ&4C!!&010 R&>*XB66&19(V&0R'(-25EMH=O&XDL7>RD!X\D
M_)]"O3'X4UM0O=/9CJ%N'MQS]IM\D#ZKU'UH UJ*C@N(;J!9H)4EB;HR'(-2
M4 %%+VI* "BBB@ HHHH **** "BBB@ I:2B@!:*2B@!>U%%% !24M137$-NF
M^>6.)/[TC!1^M $E<Y8?\C]K'_7M#6Y:WMK>KNM;F&=?6*0-_*L2P_Y'W6?^
MO:&@#HZ**2@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH CGFCMX7FE;;'&"S-Z 5G:1!
M+(TFI7)<RW/W$?\ Y9Q]E'IZU'>;M4U(6"8^RP%7N6[ENJH/RR:V: "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B@G S6')//KDS6]FS
M1:>AQ)=#K*>ZI[>K?E0!+/J<]W<BUTD1OU\ZY/*1>P]35BQTF"RD,Y9I[IAA
M[B4Y8_X#V%6;6UAL[=(+>-8XD& JBIJ "BBB@ HHHH **** "BBB@ HHHH *
M*** ,B;1VMY6N=(D6UF)+/%C]U*3ZCL?<5-IFJB^4PSPM;7T8S+;N>5]P>X]
MZT:I:AIL5\H?<T5Q&/W4\9PR?_6]J +M%9FG:C+)*UE?Q^5>IGH/DE7^\I_F
M.U:= !1110 4444 %%%% !1110 4444 %+244 %%%% !7D'B.X?7M1>XNOFA
M20I#"[91,>H]_7G\.M>OUY/K^FRZ)?3B?S?L[.7BN7'[MMW.UL=,<TF.)B68
MN-$NDGLHA!*@RAA.%?'.QN!\I/&<9KT;P[>#4/%.H7@4+YUE;O@'.,BO/;2$
MZZ%M=*ADN))/D\Z-OEBR>K')&!]<UZ'X=LQI_BG4;,,&\FSMT+8QD@=:!LZR
MBBBF2%%%% !1110 4444 %%%% !1110 G>EHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH *I:G>M96NZ*,RSN0D48ZLQ_PZU=) &2<#
MUK(LE;4M2;49%98808[93W]7_'M0!<TZS^Q6@C8AI6)>5P/OL>IJW110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1169JUW*J+8V38O;CA"!
MGRQW<T 5KYQKD\FEPL?LB'%Y(,X8?\\P??O[5L0P16T"0P(L<2#:J*. *BL+
M*+3[..VA'RH.2>K'N3]35F@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** *6I:>E_ HW%)XFWPR@\HWK]/44S3+][GS+>Z01WL!Q*HZ-Z,OL:T*R
M]8MYP(M0LP3<VQR4 _UJ=T^OI0!J457LKV&_M([F!LHXS@]5/<'W%6* "BBB
M@ HHHH **** "BBB@ HHHH 6DI:* "F.B2*5=593U##(I]% $<<,4 (BB2,'
MJ$4#^5<_IV/^$\USU\B#^5='7.:</^*\UP]O(@_E0!T=%%% !1110 4444 %
M%%% !124M !11THH **** #O1110 4444 %%&,TG2@!:*2CO0 M%%% !1110
M 4444 %%%% !114-Y=16-I+=3MMBB7<QH SM5G:YF32K=CYTW,K#_EG'WSZ9
MZ"M6-%BC6-!A5  'H*H:5:/&DEW<8-U=$._'W1_"OX"M&@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@!DLB0Q/)(=J("Q/M6;HT<DWG:E
M<?ZVY;Y 1@I&/NK_ %_&H]:DDN+BTTJ(<7#;IVQD+&.WXGC\*V%4*H4#  P!
M0,6BBB@04444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!CQG^
MR];:)L+:WQW1^BR@<C\1_*MBJ.K6(U#3I(1CS1AXB>SKRI_,4ND7ZZGI<%X%
M="Z_,KKAE8<$$=N: +M%%% !1110 4444 %%%% !2TE% "T4E+0 4E+10 E<
MYIV?^$\UST\B#^5='WKG--'_ !7FNG_IC!_*@#HZ**6@!**** "BBB@ HHHH
M **** "BBCO0 444=Z "BBB@ HHHH ***!0 4444 %%%% !1110 4444 %%%
M% !6),C:OJZ1@@Z?9MN?OYLO9?HO7ZU;U6\FMH4BM%1KR=MD2N>!ZD_05/86
MB6-G' O)'+,>K,>I- %FBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBJNI70LM-N;DD?NXR1DX&: *6E9N]1O]0?D!_L\/LJ]?_'LUKU3
MTNV-IIL$)7:P7+#.<$\GFKE V%%%% @HHHH **** "BBB@#$EUB^>]NH++2S
M<+;L$9S*%R2,_P!:#J>LC.-"8],?OUYK.N=1GTUM6>WC=IFN1M(C+J,(OWL=
M,U+X:UC4=7NIGOD^S;5XM1&?D'8ECU)I7-73?+S=#2T[5IKR_N+.XLGMI855
M^6#!@<^GTK5K%MQGQ??'TM8OYM6U0G<S:L%%%%,04444 %%%% !1110 5DV.
MVUUN_M"YS/BZC4^AX8C\<5K5E:I^XU'3;O)"B0Q.<X&&&!GUYQ0!JT444  Z
M4444 %%%% !12TE !2TE+0 4E+24 +1110 G>N<TW/\ PGFN\<>3!S_P&NC[
MUSNFX/CK73GD0P#'_ : .BHHI: $HHHH **** "BBB@!**6B@ I.]+10 444
M4 %%%% !1124 +12"B@!:*** "BBB@ HHHH **** "FR.L<;.[!449)/84ZL
MF\+:E?+81Y^S1$-<L#C)ZA/ZF@ TV)[RY;5+B/:SKL@0]43_ !/6M:D    &
M .U+0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5EZZC3
M6D-N-A$UQ&CJP^\F?F'Y5J5EZG )M3TIMY#1RLX7/WOEH!&H!@8HHHH ****
M "BBB@ HHHH **** .,UC<-+\0$21(!<H3YC$*PVKD''-0^"9[%]1N$M8+.-
MA'DO [DMZ_>IVI:A8VVH75EJ$I@CNKLLMP#_ *ID12.,'.<XJ]X=729=5GN+
M#56NVV$"+;@1J3DXX'>I1T-_NVFF7[<'_A,+XXX^RQ<_BU;58UO_ ,C=?=?^
M/:+'YM6S1'J8R"BBBJ)"BBB@ HHHH *!110 5F>((?.T6=A$LLD.)XU;IO0[
ME_45IU!?(9+"X0-M+1L ?3B@"2%_-A20?Q*#3ZIZ4^_2K8E@Q$8!([FKE !1
M110 4444 %+244 %+110 4444 %%%% "=ZYW3?\ D>M=_P"N4'_H-=%WKG=-
MQ_PG6N\_\LH./^ T ='1244 %%%% !1110 4444 %%%% !1110 444E "T4E
M+0 4444 %%%% !1110 4444 %%%% !112$@#)Z"@"GJ5\;*VW(N^>0[(D]6/
M]*73;+[#9B-G+RL2\KG^)SUJK8;M1OWU(LWD(#';QGI[O]3_ "K6H **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "LR]+#7-+& 0?
M-YSR/EK3K+U*=(-5TK+ /)(Z*#W^6@$:E%%% !1110 4444 %%%% !1110!R
M;06$>KWFI7^-MK<E5##()D11S^5=';K:!B;=8 3U,8&?TKF-31Y-/U]4A$Q-
MPHVLN['R#G'?Z5#X, ^U!H+7RXOL^V61HF0F0$^O7C%),VE"\>8W;?'_  EM
M]US]FB_FU;-8UN/^*NOCG_EVB_FU;-*/4SD%%%%42%%%% !1110 4444 %-E
M_P!4_P#NFG5#>2>593R?W8R?TH JZ()!H]L)$56V]%.1BM"J>E#&E6W&,Q@X
MJY0 4444 %%%% !1110 M)2T4 %% HH **** $KG=-/_ !7>NC'_ "Q@Y_X#
M715SNF_\CUKO/_+&#C_@- '1TE%% !1110 4444 %%%% !1110 4G2E[T4 %
M%%% "44M% !1110 4444 %%%% !1110 4444 %9&JRO>7":3;R,CRKOG=>"D
M6<=?4]*O7]XEA92W,@R$'"]V/8#WJOI-I+! T]T0;NX.^4CHOHH]@* +T420
M0I%&H5$ 55 X %/HHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "LO6V6&&UN3"',5RF6)QY:DX9ORK4JCK%F+_ $>ZMF7?OC/R
M[MN3]: 1>!STHJGI5U]LTNVN-P8L@R1T)[U<H **** "BBB@ HHHH **** .
M$UZW+V^ISJ\XDBO4V)%+L#$HH&X^E+X0E<ZY/'<9:X6'[WV@R#&<$8Z U'KM
MW#;M>QO<SPR37@$8B0,KD(IPV> *T_"=K?B6YO;RWLD$_(EA WO_ +V.*DZF
M_P!V[FC;X_X2^^XY^S18_-JVJQK8?\5=J'_7M#_[-6S1'J<\@HHHJB0HHHH
M**** "BBB@ JCK$IATBZ=%#/Y95%)QECP!5ZL?6U2ZN-.L7P1)<"4C//[OYA
MC\0* -2!!%!&@& J@8]*DHHH *6DHH **** %I*** "EI** %I*6B@ HS110
M E<[IO\ R/.N_P#7*#_T&NB[USNF?\CSKW_7*#_T&@#HZ*** $HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH 3O2T44 %%%% !1110 4444 %%%9NJW<B"
M.RM<&[N20N>B+_$WX?SH A7_ (F^JLS;6LK-QLX^_+ZY]!_.MBJ]G:16-I';
MPKA$&/J>YJQ0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1QWZ444 9.CYMKB]T\HJ+%)YD6.Z-S^&#D5K5CZN6L;RVU53
MB.,>5<9/5">#^!_G6N"" 0<CUH 6BBB@ HHHH **** "BBB@#A]5EU*.ZO[6
MWL]31)IPYF@LEF5UV@8&XX['M2:++:Z))(]MH/B/?+]X&V 3/<A V!^ KN,4
MM!?.[6.?T>::^UZ^O6L+VTB:&)%%U&$+$;LX&3ZUT%&**5B6[A1113$%%%%
M!1110 4444 %9%L/MGB&ZN2Y,=H@@1<\;SRQ]B.GXU>O[M+&REN'(&U?E!/W
MF[#\346D6DMIIZ+<2"2YD_>32 8W,?:@"]1110 4444 %%%% !1110 444M
M"44M)0 M%%% !WKF],_Y'O7^?^64''_ :Z.N<TS_ )'O7_\ KE!_Z#0!T=%%
M% !1110 4444 %%%% !1110 4444 )2BBB@ HHHH *2EHH **** "BBB@ HH
MHH CFFCMX7FE;;&@W,3V%9ND0R3M)JES$T<]R!LC8Y,<8Z#CCWIEXO\ :VIC
M3]S?9;?$ESCH[?PIG]3^%;     P!VH 6BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@".>&.Y@>&5=T<BE6'L:
MS-"NF*W&FS;O.L7\L%@?G3&5;GKQQGU%:]96K64S30ZE9L1=6O5!_P MH^Z'
M^8H U:*AM+J*]M8[B%MT<@R#_,5-0 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !116?JMW+!"MO:D?;+C*0Y_A]6/L* *L\9U;6A!*F;*Q(D//
M$DW8'V7K]<5M53TO38=*L([2$<+DL?[S'DG\35R@ HHHH **** "BBB@ HHH
MH ***7B@ HHHH **** $KG-,_P"1ZU\]_*@'_CM='7.:7_R//B#_ *YV_P#Z
M!0!T=+244 %(:6B@ HHJCJ.KZ?I48DOKN*!6Z;SUH&DV[(O45SW_  G'AO/_
M "%H/U_PJWI_B32-6N#;V-]%/*%W%5SG%2I)]2G3FE=HUJ***H@**** "BBB
M@ HI.E+0 4444 %%%% !1110 52U.]-E:%D&9Y"(X5]7/3_'\*N$@ DG ')K
M)L=^I7QU&3_CVC)2U3U[%S]<<>U %O3+$V%H(WE\V9B7EEQC>YZG%7*** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH Y^=%\-W4M[$K_V=<.#<1KR(7)QO ]#W_.MY'61%=&#(PR&4
MY!%*RAE*L 01@@]#6&T<GAUFDMXVDTL\O$O+6_NH_N^H[4 ;M%1P317,"30N
MLD3C<KJ>"*DH **** "BBB@ HHHH **** "BBB@ HHHH ***J7^HV^G0B2=C
MECM1%&6<^@% "ZA?0Z=9O<S9*K@!5&6<GH /6JNF6<_VF;4;X 7<P"B,'(B0
M=%^OK3++39I[T:GJ)8S8_<VQ.4@'J/5O>M>@ HHHH **** "BB@4 %%%% !1
M2TE !2TE% "T44E "T444 %<WI?_ "//B'_<M_\ T"NDKG-*_P"1Y\0_[EO_
M .@4 =%BBC-% !1110 G%><3:7#XB^)-];ZJ2T-O&#%%G&5[?UKT>N#\6:)X
MBOO$<5]I$4,8AC 2=6"R9/W@?4=*SJJ\3JPLK2:O:ZW[&O\ \(!X8(P=,7_O
MMO\ &K>F>%-$T>[%U860AF"E=X9CP?J:YI1\10N-ML>,<D5K: ?%G]HG^VDA
M%H4/W2"=W:IBXW^'\!U(S47>HG\SJJ*04M;'(%%%% !1110 4444 %%%% !1
M110 4457O;R*PLY;J?.R-<D#J?84 4]4D>X9--@_UDXS*V<>7%W/U/05HQ1)
M#"D4:[40!5'H!5#2K65$DN[I2+NY.]U)SY8_A7\!^M:5 !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%'>B@ HHHH ****
M "BBB@ HHHH Q9K"[TR5I]("-"[%I;1SQGU3T/MTJ_9:C;WZGR7^=>'B;AT/
M3D5;K/U'2(;]0X)@N5.4GCX93[^H]C0!H45BB]U/3$Q?VYNX5'-S;+R/=DZ_
MEFM"QU*SU& 2VEPDJ]\'D?4=J +5%%% !1110 4444 %%%% !16=?ZW9:<XB
MED+SG[L,0W.?P%52FL:J664+IUF<8V-NF<=P>R_AF@"S>:LL<XM+./[5>'_E
MFI^5!ZLW;^=)8:6R2I>ZA(+C4-N-X&$C'H@[?7K5NSL;:P@6&VB"(OYGW)[U
M8H **** "BBB@ HHHH **** "BBB@ HHHH 6BDI:  4E%+0 4444 )7.:7_R
M//B'_<M__0*Z2N<TK_D>/$/^Y;_^@"@#HJ*6B@!**** $-<#K_B#7[WQ+)H?
MAT1JT"@RR,!U^IZ8KOJ\WNK_ /X1+XAW=W?02-9Z@,I*HSCI_+'ZUG5;2.K"
M).3=KM+1%&WO_'=W?WMA%=PFZM1F2,A1G_=-:W@:\UK4=7N7U/4BQME,<EFP
MPRGUQ_6JTVJP:%\0CJ5PS+8ZA ,2D< =1^M/\,WJZK\2=4O['/V-H@I('#8&
M,_GS6"TEK+J=M1<U-M027*G>W7JCT84M)2UUGD!1110 4444 %%%% "4M%%
M!1110 5D2#^U-7\LJWV:Q8-G/#R>GT'\ZGU6\>VACAMS_I=RWEP<9P<9+'Z#
M)J>QLH["S2WCYQRS'JS'J3[F@"S1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !5"YT6PN2SF 1RM_RUB.QP?4$=ZOT4 8,]OJ6DV<DT6J^;#"A8K>+NR!ZL
M.:;8:SK4D<3WV@21HZAC+#.K 9_V<[OTJ64C6]2-LO-C:29F;M+(/X/H.IK;
M'TH R9?$=C;V[SW*74$2#+/+;LH4>_%16_BW1KD.8[E_DQG=$PQGIVIC.-?U
M(QQL&TVSD_>,/^6LHZI[@=_>MW:O]U?RH PXO%^BS7 @CN7:7)&WRFZU8.O6
M[,4AM[V5L<;;=@"?3=C K3V)U"+GZ"G#B@#%-YKUP\8ATJ*V1B0[SSJQ7T("
M]:>=)O+HQ-?ZG,P3DQ6X\I&/?=CEA[5KT4 5;73;*QW&UM8HB[;F*CDGZU:H
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "EI*7M0 44"B@ HHHH *
MYS2_^1X\0_[EO_Z *Z.N<TK_ )'CQ#_N6_\ Z * .CHQ110 E%%% '/^(_%M
MCX9DMX[R*=VG!*F),@ =<G\:YVY^)/AR\39<V,\J Y DAR![^U=5XCU73]'T
MQKJ_BCE XCC902[>@S7 +\0-FV:?PO +1C@N(^,>Q(P:PJ3Y7:]COP]'GAS*
M#?G>Q?U#QWX4U.V2"\TZ:6-?NJ8\;1[>E:OA#Q%X?N[@Z9H]E);$*7.Y,9 ]
M3ZUO:=_9&JV$=[:VMJ\4H!!\I?R/%7HK2V@?=#;PQL>Z( ?TJHQDW>Z,JE2G
MRN"BU\_^ 38I:0TM:G*%%%% !1VHHH **** $Q2T44 %-=UC1G=@J*,LQ. !
MZTZL>_=]1U!=*C"FW"[[QNN!V3ZG^0H 73(Y+RZ?5IL@2+LMX_[D>>I]S6O2
M*JHH50 H& !V%+0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 444=J "BBB@ HHHH *S=7O)$
M1;&T;_3;D%4*XS&O=_P_G5J]O(K"SEN9F 2-<XSU/8?4FJ6D64BE]1O #>W(
M!8?\\D[(/Z^] %RQLX["RBMHB2J#!9NK'N3[FJFJ7TPECT^Q*_;9AG)Y\M.A
M<U:U"^BTZRDN9F "\*"<;F/ 4>Y/%0:59S1J]Y>;6O;C!D('"#L@]A0!:LK2
M*QM([>$?(HZ]V/<GW-3T44 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !2TE+0 E&#Z&F2DB&0@X.T\_A7DGAJVU/Q'>:D)-=N[5
M+9LY#$Y&3[^U9SJ<K2MN;4J//&4F[)'K_/H:.?0UY\WAB988IF\97 24CRR&
M^_GICGFLSQ-I>J^&5L+@:_=S^=<K$5)( '7U]J4JCBKM%PH1G+EC/7T9ZG7.
MZ5_R/'B'_<M__0!6_$28D)Z[1G\JP-*_Y';Q#_NV_P#Z *U.8Z.BBDH ****
M /,OBBS/JNB6[?ZEW.Y?JRC^M=GKEG;OX4O8#&IA2U;:N.!A>,5R/Q+LM0N-
M3TF>RLI[D0AG/E1E@""",X^E4KOQ7XNO;&:SD\/2JDT90E8'R 17,Y*-25ST
MU3=2C3Y&M+];=37^%;NV@W"L256;"^W%=[7C/A_5/$WAJUDM[70;F19&W,9(
M&SFNT\+^)-?U;56M]2TA[6W\O<)3&R\^G-&'J+D47N1C:$O:2J)JWJCLZ*2E
MKI//"BBB@ HHHH **** "BBB@"IJ-X;.S:1$$DQ.V*//WW/04W3;,VEJ/,P;
MB3YYF'\3'_#I52UW:GJLEXZ8M;8F.V)((=OXG'IZ?A6Q0 4444 %%%% !111
M0 4444 %%%% !15&^UG3=,8+>WT$#D9".X#$>N*?9:I8:BK-97D-P%.&\MP<
M'WH MT444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 445C:Q++=W$.DVKE7F^:XD7^"+N/J>E #8MNMZD+@J'L;1B(\])
M9.A;Z#H/?-;1(5220 .Y[5';V\-I;1V]O&L<,:A40= !65J5U]NO5T:V<[G&
MZZ=#_JH_3ZGI],T ):C^V[]+]L'3X&/V9>")6'_+3Z>GYUMTR&&.WA2&% D:
M#:J@< 4^@ HHHH **** "BBB@ HHHH **** "BEHH 2BBB@ HHHH **** "B
MBB@ HHHH *.E%% #)O\ 42?[A_E7DW@6&]D?6VL[V.T=6#/+)$)!M!.1C->L
MS?ZF3_</\J\P^'0C:7Q$)B%C*'>3T"_-G]*PJ_' [*'\"I\OS':19W*:K#>0
MW4DT<D@*D6/[L#/5.?E!]:U?B=_QXZ./^G]?Y&LK2];NHIK>"VDUIK*.1(ED
M,*"()QMY[ C%:OQ-YL=(.,_Z<O\ (U57^&RZ7-]8C<[F+_5)_NC^5<_I0_XK
M;Q#S_#;_ /H KH(O]4G^Z/Y5S^E?\CKXB_W;?_T 5J<!T5+24M "4444 %)B
MBN8\1^+ET>[CT^SM7O=2D&5A3L/>DVDKLN%.4WRQ1T^**X;0O%^KZA8ZQ)<:
M>#=V/"V\8P2WH:V?"_BFW\202 1M!=P\2P-U'N/:I52+V+GAZD+W6QT!I:.M
M%68A1110 4444 )BEHHH *R-8FDGFATJV>1)KCF21!_JXA]XY[$]!5^^O(K"
MTDN)B=JC@#JQ[ >Y-5M(LY((I+FY;==7+;Y,G.ST4>PH NP01VT$<,2[8T4*
MH]!4E%% !1BBB@ HHHH **** "BBB@ JMJ$[6NFW5P@!>.)G4'ID#C-6:9+&
MDT+Q.H9'4JRGH0>HH \1>2XAO1/--+/)+\S2MRS'J.OIZ>U7;._>UN(K^S?9
M*C*N ,;QGD'U%:NJ^%M6TZX,-M ]]9D$QRH 7C'7:WOZ8ZTW1/!^HWNI02W5
MJUE90D,ZR<-+CL .G/)_E2+NK'IT4@DB1\8#*#3Z0#C'0"BF0+1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444V21(HVD=@J*,EB
M< "@"GJFH+I]H9-I>5R$B11DLQZ4S2=.:QMR\[B6]F.^XEQ]YO\  57TR-]1
MNWU:X4^6PVVD;KRB?WOJW7Z5JS316\+S3.L<: LS,< "@"KJFHKI]N"J&2XE
M.R")1DNW^'K1I=A]AMB9&\RYE.^:0]6;T^@Z"JNEI)?W3:O."$9=EK&W\*=V
M^K?R K8H **** "BBB@ HHHH **** "BBB@ HHHH *.:** "BBB@ HHHH **
M.U% !1110 4444 %%%% #)O]1)_N'^5>/>#=8ATJ_P!06Y5#;W5PL$I<X"J=
MV3_GUKV&;_4R?[A_E7D_P^TN#4]6U S;LVUPDP&,AB"PP?SK"K\</4[</;V-
M2_E^9U$2^%I+F%(-6^7Y(_LZRG;)M.5!'M4'Q,/^A:1CK]O7^1KK =+64*/L
M8D!P!E00:Y+XFC_0=']?MZ_R-56_ALG#.]>)W,?^J3_='\JY_2O^1V\0_P"[
M;_\ H KH(O\ 5)_NC^58&E?\CKXAX_AM^?\ @ K4Y#HA124M "4444 )7G6F
M2QZ?\5-774'6-[E,VSR' V\8 )^AKT6L#Q/I.B:I;)_:[Q0E?]7,SA&!]CWJ
M)JZ]#>A-1;3V:L8/@ZXAA\1^*Y))HXT%YD,S #&/6J_A61-1^(NKW]B,683:
M2.A;IG\^:I+X,\+"3+>)5*'EE\Y?F^O-=QH"Z'9P"QTB>V8*-Q6-PS'W-8QC
M)V4N]SJK5()2<+NZ2VL;5&:*6ND\X**** "BBB@ I,4N:S-9N9T@2ULV O+H
M[(SUV#N^/84 0IC6-69R2;.QDVJ,<23#J?\ @/\ .MFH+*UCL;.*UBSLC4*"
M>I]ZGH **** "DI:* "BBB@ H[444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5AWY.LZB=,C/^B0
M$-=G'WSV0']35G6+V6"..VM<_;+IO+A(&=OJQ]@*L:;81:;8QVT62%Y9CU9C
MU)]S0!:4!5"J, #  K$NG_MK4CIR FRMR#=,.CMVC_J:LZS>R0QQVEJ&:\NL
MI%C^ =V/L!5NRLXK"TCMXON(.IZD]R?>@"< #@=*6BB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHI: $HHHH **** "BBB@ HHHH **** "BBEZ4 1S?Z
MB3_</\J\Q^&Z/+-X@CC8AG4JI!P03GG->G3<02?[A_E7E_PZ>$RZY'+,(UE^
M0-NP><]/>L*GQQ.RA_ J?+\R[H]I;1W-M:2:5I,EW$RAI?MY9V8=6QCENIJY
M\3,_8M'[_P"G+_(U4LKI)OLFE>?I:P(ZJMTCKYC*IXQWW' R?<U;^)G-GHX[
M_;E_D:JM_#8Z"_VB)V\7^J3_ '1_*L#2O^1V\0\_PV__ * *Z"/B)/\ ='\J
MP-*Q_P )KXB]<6__ * *U.(Z&EHHH 2BBDH #7F/]E)XM^(FJVVIR2?9[+Y8
MXT.W(XQ_,UU'BB3Q0DT T".-HRI\PMC(/;K7&2Z5X[DUA=5%M'%>A=GF1E1N
M'HP[UC5ETLV=^$A92ESI-K375'4_\*S\-8 \FXX_Z;FM'1?!VCZ!=M=6,4JR
ME=I+R%N*YC[1\2<#]S!_WPM;7AN?Q<^I.NN11+:["0R@9W>G%$7&^D?P(JJH
MHOFJ)KU.LHHI<5L<84444 %%%% $<TJ0PO+(P5$4LQ/8"LW2HI+J5]5NHMDT
MR[84/_+.+M]">I_"H]1/]I:G'IF$:TB DN\GK_<3\QG\*V R 8#*,< 9% #J
M*;O7^\OYTNY?[P_.@!1THI-R_P!X?G1N7^\/SH 6BDW+ZC\Z-R_WA^= "T4F
MX>H_.C(]10 M%("/44N10 44F1ZTN1ZT %%&:,B@ HHS1F@ HI,CUI<T %%&
M:,CU% !129'J*,CUH 6BDW#UI<CUH ***,T %%%% !11UHH **,&B@ HH_"C
M\* "BC\*,'TH *ANKF.SMI+B8XCC7<<=3[#WJ;!]*P71=>U522YT^R?(VD@2
MRCL?51_/Z4 3Z39N]Q)J]TK+=W2!0AZ11CHN/7GG_P"M6C=745G:R7$[;8XQ
MDFIC6'(@UO5 "6-A9ODC^&67^H'\Z )]*M97>34KQ=MU<#"H3D11]E'OW/O6
MK7)7&K>*+SQ)JFG:-%HXM[#R5+7GF;V+IN_A.,"EW?$$?\L_#/\ Y&_QH ZR
MBN2#_$+'^J\-?G-_C2>;\0_^>'AH_1IO\: .NHKG?#.K:O?W>IV6M0645S92
M(H^R,Q5@RD\[OI714 %%%% !1110 4444 %%%% !1110 4"BB@ HHHH ****
M "BBB@ HHHH **** "EI** &3_ZB3_</\J\H\"V\ES!XA6.Z%JV#^]*@[1SD
MUZO-_J)/]P_RKS#X<&-5\1-,NZ$*=X]5P<C\JPJ?' [*'\"I\OS)-,U%9TL[
M1I[^:%6CB,J:>$5B,8P^. <9SZ&M3XF#-IH_&?\ 3EJBCQQV=M=#3M833G2+
M*Y4JR@Y3Z=0,CKQ4GCZ_AU'1]$NK=BT;WRX/3GN*JM_#9=%?OXM'H4?^K3_=
M%8&DG/C+Q&.,#[/]?]6*WX_]4G^Z/Y5@:0/^*R\2'CK;_P#HL5J<!T-+24M
M"4444 8GB34M4TNR6XTVP%X0?WB9Y ]0.]>=0^+-=3Q9/>BPG>9K<*UCDX09
M^]MKU^H5L[=;QKP0(+EEV&7;\Q7TS6<X2E:SL=%&M"$6I0O<X$^._$8)SX;?
M'^ZU3>$AK>H^*;W5]0@GMK=HP@A9B%S[ UW_ #ZTF.:%!WUD#KQY6HP2OZA2
MTE+6ASAFBCK24 +S5+5+UK&R:2-#).WR0QKU=ST_Q_"KA( ))P!WK%L$.JZF
MVK2%C;Q@Q6:'IC^*3ZG&!["@"I%HUO'J%I:3EY6:)Y9CO/SR9&6S^@]JU#H>
MG'_E@>N[[YZ_G23?\C#;#/\ RP?^8K2% &?_ &)I^<^2W7/^L;_&E_L2P_YY
M/_W\;_&M"B@#/&B6"](G_P"_K?XT?V-8GG9)_P!_6_QK0I* ,_\ L2QRI"29
M4Y'[UO\ &@:+9J%"B4;,[?WK<?K6C10!F_V)9C&/-X&!^]:D.B6AXS..W^M:
MM.BBX&;_ &):\_-/S_TU-#:);'^.X'TF;_&M*BBX&:=%ML$;YQG_ *:F@Z):
MXQON/3_7-_C6E11<#-;1;9LYDN.>N)F_QI3HMLP.7N.<?\MF[?C6C11<#*DT
M^P1F62Y=2<$J;@@_SIHT_30P/VMNN0/M/_UZ9;00S>)=7\V*.3$=OC>H..&K
M2^PVF?\ CT@_[]C_  HN!0%CIJ]+QNN?^/GO^=)]@TY3D7K=<_\ 'S_]>M#[
M!9XQ]CM_^_2_X4?8+/\ Y]+?_OTO^%.X%#[%IV<_;3US_P ?/_UZ:+#3!C%Z
MW#;A_I/_ ->C48+F&1!I^B:?<QD?,9'$9!],;3FJ8&K<@^%],Y]+@?\ Q% %
MT6.F@<7IX.[_ (^/7\:/L6G9/^G'/7_CXZ?K5-?[4S\WA;3QGCB=?_B:,ZD/
M^96L>>O[Y?\ XFBXRY]BT\\F])QS_P ?'Z]:3[#I^.+YO7_CX_7K57?J('_(
MK6G3'$J__$TGF:C_ -"K:^G^M7_XF@1<^Q6)R/M[#'87 X_6E^Q6.?\ C_<>
MPN/_ *]4O-U'G_BE;;G_ *:K_P#$T>;J/_0JVW_?U?\ "E<"Y]AL<_\ (0DZ
M8_X^/UZT/863@@ZC*,C!Q<?_ %ZPM:U^30;%;W4/"\2P>:D6Y'4D%C@<8Z5M
M:_<66AZ/+?MIT4YC*J(U4 L68*.<>IHN ]K&RR2=1E&<=+C_ .O1]AL^?^)G
M,.W_ !\=/UJEYNI=/^$6M_\ O\O^%1Z?J]G=Z=JUS/HZ6\FF2/'+%@-N*C/!
MHN!H_P!GV@_YB4V,8_X^/_KTIL;1N/[3F_"X%9\5Q?RQ(Z^%H-K ,/WJ]_PI
MS7%Y$C2R^%XE1 68K(I. ,^E %TV%KALZI-\QR?](%)]AM23_P 3:;.<_P#'
MP*L6$5E>Z?;W2V4*+/&L@4QC(!&<&K/V"R_Y](/^_8HN!F_8;;/.L3=<X^T#
M\J#8VN<_VO,,'/\ Q\"M'^S[+O9V_P#W[%']G67/^AV_/7]T/\*=P,M]/M9$
M*-K,^T_> N #^?:M"U>PM+9+>&XA$<:X&903]3S3SIUC_P ^5OSU_=+_ (4#
M3K'&!96W3'^J7_"D!0U.]>ZEBTRPE5I9P3)(C ^5&.IXZ$]!_P#6K1L[.&PM
M([6W3;%&,*,Y_P FEAL[:W9F@MX8F8 ,40*2!TSBIZ .9T,?\5MXL..KVG_H
MFNFKFM#(/C7Q8,])+3_T2*Z6@ HHHH YS0P1XL\3' P9(.?7Y#71US>A$?\
M"6^)QSGS+?/_ 'P:Z2D@"BBBF 4444 %%%% !1110 4444 %%%+0 E%+24 %
M%+10 E%%+0 E%%% !12]Z3O0 44M)0 R?_CWE_W&_E7EGP\GD@.MN(!-%G,H
M8X 3!)/O7J4__'O+_N'^5>9?#H%XO$"!0S,I"JW0G!P#6%3XX'90_@5/E^9H
M:99WER;69--N#8.5>*,WP:.-3T;&.@[#VIGCVP@TW2-#M+92L27ZXR<]<DG\
MZFTC2+6(6GF^&]1AN!MW%;C]VK#&<#?TSVI_Q+&;31QUS?+55O@8Z#?MXG<Q
M_P"K3_=%8&D?\CEXDXZ&W'_D,5OI_JT_W1_*L#1R/^$Q\2C_ &K?_P!%"M3B
M.B%%%% "4444 %%%% !1110 4444 %%%5K^\2QM'N'YV\*O=V/11[DT 4=5D
MDNYH]*MI"DDGSSN/X(NX^IZ4MYK.FZ+/96$\@C:;$<2CHH'0GT';-2:/8RVL
M#S73;[RY;S)F/\/H@]@.*AU:TMY;RQ>2)&=Y@C$KDLHR0OTS0 ^7_D9;;U^S
MN<>O(K5 -8MXNW68RO&VTDQCMTKS_P !^$++Q'X8&I:C?:JUS)<2J3'>N@P&
M., 4 >M &C!KB_\ A66BCI?ZV/IJ+TH^&ND#IJ6N _\ 82>@#L\&C!]*XX?#
M?2P>-5UX?]Q)ZYGP?X5AUO\ MH7FL:V?L>HR6T6R_9<( ,9QU//6@#U?!]*.
M?2N._P"%=:;_ -!?7_\ P9/2_P#"NM-_Z"^O_P#@R>@#L.?2CFN/_P"%=:=_
MT%]?_P#!D]'_  KO3O\ H+Z__P"#)Z .PHKC_P#A76G?]!GQ /\ N)/5+5_
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
MY]L=/;I6S;^)?%-I;1P0?#N6.&-=J1QWT8"@=@-M '=T5YOI/Q+US7'NDL/
MUS(]I)Y4X-ZB[&].5K2_X2WQ:#_R3^Y_\&"?X4 =M17$_P#"7^+>/^+?77/_
M $_Q_P"%-/C#Q:/^:>W?_@?'_A0!W%%<,?&7BT?\T\O#]+^/_"F?\)KXM_Z)
MQ?\ _@='_A0!WE%<"?''BX?\TVU'_P #8_\ "FGQUXM!_P"2:ZD?I>Q_X4 6
M/BN?^*+7O_I]M_Z&*TOB!_R*DV1G_2(./^VJUP_B[6_%WB?1%T]/A[J=L1<1
M3;S<(_W&SC''6M34O%FOZM8R6EY\,]8>&0C(6Z0'(.0<CIR*0'I9SD\&N L#
MG1?'G))%]<\>GR"L0:SK^!GP)XH'J1J(.?UJSI?B+6-)@N88?AKKC"YE:6<R
M3HY=CU)SUI@>A6=Y:BQMQ]I@!$2\&0<<?6FW][:'3KH"Z@YA?_EHO]T^]>?C
M69<Y/PBO/J(X:!J@.-WPBNQ_VPAH [[P\<^&M+)(/^B1<C_=%:5<"GQ!NK2>
MQL;CP;J=A]JD$%N)F14W8X QTX%=&=5UA3_R+[GZ7*_X4 ;=%83:QK"C/_".
MRGCM<+_A5[1M276-(MM12-HUG3<$8Y*^QH \V^)UO)'XZT*]DV+;/93PJS.!
MEP"2,?0CFO2=#_Y%_3>,?Z+%QZ?**?J&DZ=JJ1KJ-A;7BQG<@N(E<*?49Z5S
MNO\ C5/#NM6^B6NB7NH7#V_G)': ?*@..GMBE;4#KJ*X7_A86I<?\4-KW/\
ML+_C33\1-0'7P/KW_?"_XTP.\S1^-<%_PL>^'7P1KP_[9C_&C_A9%V.O@O7A
M_P!LA_C0!WN3ZT9KA/\ A9%Q_P!";X@Q_P!<!_C2_P#"R)>_A#Q!_P" X_QH
M [JBN('Q&/&?"GB$?]NH/]:4?$93U\+>(1_VZ?\ UZ .VHKC!\1(OXO#7B(?
M]N7_ -E3_P#A85O_ -"YXC_\ ?\ [*@#L**X_P#X6':_]"_XC_\  #_[*C_A
M8=IG_D7_ !'_ . '_P!E0!V%%<=_PL2S'_, \1_^"_\ ^O0?B+9C_F >(_\
MP7__ %Z .QHKC#\2+$#G0?$?_@O/^--/Q+T\'!T+Q'_X+S_C0!VM%<2?B9IP
M_P"8%XC_ /!<?\::?BAIH_Y@7B/_ ,%Q_P : .XJ(W,(NA;&1?.*EPF><#O7
M(6?Q.T&[O'M98=2L94A,V+VU,>Y1_=YY/M6#/X]1/&,=Z-+G>#[,8P XWE20
M=V/7VS0!ZE1533=3M-6LDN[*420MQGN#W!'8U;H **** (YYX[:WDGF=8XHU
M+.S=% ZFB">.YMXYX7#Q2*&1AT(/0UD>,?\ D2M;_P"O*7_T$U+X7&WPGHXX
M_P"/*+I_NB@#6HK&UOQ/IV@2P17OGM)."42&(N2!U.!6:/B%HI(_<ZE_X!O0
M!U=%<I_PL/1?^>.I?^ ;T?\ "PM$_P">6H_^ ;T =717)GXBZ$N-RWZ D+EK
M1P,GWKJU8,H8=",B@!EQ_P >TO\ N-_*O'_!UPUKIFO2"ZA@3 5WF!("G(.,
M=Z]BE4O"Z#JRD#\J\E_X17Q9X<LM0N+>ZM%MW4M,H ?>H]F!K"JGS1DEL=N%
M<7"<&[-VM?U-;1-4@A@L8(M1TBX4!$5([=O-8<?K5SXEG_1]&&>M\O6L?2]+
M\<7-A;7EE?6,<;H&B_=1J0/^^>*GO/"WC75I+4:I>VD\4$RR@9 Q@\]!Z43D
MYPLDS2,8PJ\[DM+_ -;'I,?^K3_=%<_HQ_XK+Q1SSOMN/^V0KH$&$4$Y(&*P
M-%.?&'BCD<26W'_;$5N><=".M+110 E%%% !1110 4444 %1SS);P232G;'&
MI9CZ #-25AW@&M:F=/(8V5KB2X/\,K_PI[XZD?2@"31K5Y))=6ND N;K[BAL
MB.+^%1_,UKU5_M"R2]%A]HB6YV@B+(!Q]*AUNQN=1TJ6VM;IK6=L%9%]NQ]C
MTH T>U8?B"VEN9=-2&ZDMF^T9\Q ,]#ZU;T>_%]9 -&\5Q"?+FBD^\K#^8/4
M'O2:D!]NTW)'$QZ_2@#)OO#U_+;2--KD\H2-CAX8SV^E><>#/".HZOX5-S;M
M"2[%+>1Y2OD,K'<=N"&SP>?2O:+S_CQN?^N3_P C7(?"G_D0;7_KM+_Z$: ,
MK6-#U+0+:WGEUMKY9'\MX9;:)5.1UR%SQ7H5AC^SK;!)'E+R>O2N4BT@>)=5
MUA=0U&_,5K=[(88Y0J(,=ABME?#C* HUW60!P!]H7C_QV@#:K!UC2=3NM7M;
MW3;JW@*1/$YEC+,,XY7GJ*/"\DY74K>>[GNOL]XT2/.06"[0<9 &>M;] %+3
M=-BTRV\J-GD=COEED.6D8]2:N8I:* $Q2]N:** "BBB@ H-%%  .HKF_ >#X
M1M<_\]I__1SUTG>N.LO#7B?2K7['IWB2S2U61WC673MS*&8M@G>,\DT 8O@_
M4;BX\7S>=J-S-<S-,MU;NH"HJ'$?;T)QS7I5<#9Z5XL_X2+51%XATY9U2#S'
M_LT?,"&QQOXK5_LOQM_T,VFX_P"P;_\ 9T =32@URHTSQJ#SXDTT_P#<-Q_[
M/3AIOC0?\S#II_[A_P#]E0!G^"?^1O\ &_\ V$4_] %=Q7G_ ,.UN4\0>,5O
M94FN1?H)9(TVJQV#D#M7H% !1110 4444 %%%% "4M%% !1110 F*6BB@#A_
M'O\ R'?!PP.=4'7_ '37<'K7$>.P#X@\&AN1_:?3_@)KMSUH 0_=/T-8'@GC
MP;IF!C]U^?)K?;[I^AK!\% ?\(;I>T_\LOZF@#?KA+@D?'"S&>NC/_Z'7=UP
M=QG_ (7E9]U_L9OP^<T =YS1SZT44 &3ZT9/J:** #)]31D^IHHH 7)]:3)]
M3110 N3ZTF3ZT44 &3ZFC)]:** #)]:,GUHHH ,GUHR?6BB@ )/K1D^IHHH
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
M_"/6?_?-:U]XBTG3W\N>]3S>FR/YR#[XZ?CBLS4/&:6,EK&NE7TK7)Q'\J@
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
M0:6D!!&0<CVI: "N:T+_ )''Q9P/]?;?^B%KI.]<WH7_ "./BS_KO;?^B%H
MZ6BBB@!**** "BBB@ JA=$?VMI^>O[W'_?-7^]9]W_R%]._[:_\ H(H OYJM
M-J5C;RF.:[@CD'56D (JU7.:9IFGWFH:W)<V-M-)]N*[Y(@QQY:<9- &P-4T
M\\?;K;/_ %U%/%]:$X^UV^1V\U?\:J_V!HW_ $"+'_OPO^%'_"/:*?\ F$6/
M_@.O^% %O[9:G_EZ@_[^#_&E^UVW_/S#_P!_!5+_ (1[1/\ H#V'_@.O^%'_
M  CNB?\ 0'L/_ =?\* +GVNV_P"?F'_OX*G!STKG=<T#1HM!OY$TFR5UMW*E
M8%!!P>G%;.G\Z;:_]<4_]!% %@@$$$ @\$&L.T4Z#<"SDDD>QF<F"1^D+$_Z
MOZ>GY5N5!>6D5]:26TZYCD&#ZCW'O0 W4;LV&F7-VL#SM#&7$2?>?'85Q5IJ
MOA0&#4M5#'4)65C-<PD>6['A0>V,XKJ=)GFMY#I=XV9X5S%(3S-'_>^OK6-\
M3>? ]SEXT FA;=)T&)%/- '79R,^M<C ?^+NWG_8&3_T8*I67C[4YK&&4^#=
M6.Y?O(!@CID9YQQ67'X@U:+QO<:ZWA+6#!)8+;>6J L&#[L]>E '>:UJXT>&
MTD,1D^T7<5MP<;=YQFM3OBO,_$/B74]8@L(XO"&MJ8+Z&Y?=$O*H<D#GK5BQ
M^*4MYJ,MJ/#%^[Q L\=LXEEBPQ&)$XVGC/4]: .JT#7AKDFJ*(#%]AO&M>3G
M?@ [OUK:KS'PMKM]HTNLM=>%=>/VV_>Z01VP.$( &?FZ\5VOA_Q##XA@N9(K
M6ZM7MIC#+%=)M=6 R>,GUH V:\F^.()L-*P<86Z)^FQ:Z>X^(MA;027,FCZW
M]EC?8;D6@,><XSG=TKD?CA%=:C9>'8;"$RS323[4#[204'N* ,CQ-\MIXBW*
M<#PU:YX^E=CXV&WX(88'_CTM.G^\E>-7=AXAN6NK:/29C</:QPS1_;V<J.><
M%^>GW3D#TKLM=TFS@^#7VVZN[J+6%AC5[,ZD[JK!P,>67(Z#.* .S^"B$> ,
MX.#=S$?G7+_!52;_ %\@=%/;W-<)H&OW.AZ4;>;2=1F8%FC>#4WA3)[LH;!_
M#%;/PBL[35+[68;Z\NK410B0-%>&(9S@@X/-*P[G?_")2+OQ!C)&^#\]@K:\
M,?\ )3O&?_;K_P"@5X[X/EURWO;A[/2+R\L;AF*RP7QA)VC ^;=@].X^E:_A
M2_U^+XD6L]S83V,&I7J1NS3E\A$;Y3\QW9QU/IQ3$>E>!/\ D9/&?_82'_H
MKN*X;P)SXD\9'_J)#_T 5W- !1110 4444 +2444 +2444 %%%% !1110!Q'
MC?\ Y&KP5_V$F_\ 0#6IK^3XF\-=.+F0_P#D-JR_&_\ R-?@H9Q_Q,6Y_P"
M&MS7]+OKVZTV\T][<7%E,T@6<':P*E<<?6@#;KE]+!_X6'XA/;R+<?\ CM3%
MO%^?]7I&/7+_ .-&A:1J=OKFI:MJCVWFW:1HL=OG"A!CJ?6@#HJX5P?^%XQ'
MM_8?/_?PUW5<*_\ R7*/U_L/C_OX: .ZHHHH 6DHHH *6DI: "DI:#0 F:*6
MDH *6DHH *6DI: $-%%% !1110!Q5SG_ (719^G]BO\ ^C#7:BN)N#_Q>FS'
M_4%;_P!&&NVH #1110 4444 8/C;_D1M<_Z\I?\ T$U%'>3V7@;3C:8^UR6<
M$4&1G#L@ ..^.N/:I?&QQX&UP_\ 3E)_Z":P]3\Z?PWX5T^V@$L]PD6QFD*"
M,K%G=D<\=<4 5K: :/:-X8N[9+[4[EO,CG+;5E'7>Q_@*\X'Y5)(B:3#-H6H
M@ZCJM\0T=R[$;_0LW\&WH![4Z2-+,/X>NHOMVM79\Y9VD*^:!_&6_@Q_=%-B
M*Z-YNAZM&=2U6^8-%<$X$XSP"?X-OIWQ0 Y8UT.232]:3^T]1U$!8;AF(\[
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
M!X0Y_P"*BT_C_IL* .DHKF_^%@>$ <?\)%I__?X4O_">^$N?^*AT_@X_UPH
MZ.BN=_X3WPG_ -##I_7'^N'6E_X3OPI_T,.G]<?ZX4 =#17/_P#"=>%/^A@T
M_P#[_"E7QQX69@JZ_IY). /.% &_13&EC4*6=0&( )/4GI534M9TS1U1M2O[
M>T60D(9G"[C[4 <IXV./&?@?K_Q_R=/]RNY[UY3XWU^QU?Q3X070M;L#<QW4
MI\S>'2/Y."P_.MT3^*L<>*_#Y.<<P_\ U^M '<T5PPF\6$$?\)5X>/. ?)/^
M-.\SQ?AO^*G\.]>#Y1X_6@#MZX5O^2XK[:'_ .U#3M_C'!_XJ;PY][_GD>GY
MU@:?J4NF_%UI?$>L::\C:3A)H3Y<8&\X7D]>M 'J]%0I=6\EJ+I)XVMRN[S0
MWRX]<^E9P\5>'STUJP_[_K0!KT5DCQ1H)Z:S8G_MLM*/$VA'IK%CUQ_KUZT
M:M%98\2:&<8U>RY./]<M*/$>B'IJ]E_W_6@#3HK-_P"$AT;_ *"UEUQ_KEI1
MK^C-TU6R/_;=?\: -&BJD&J:?=2B*VOK>:0C(2.0,<?04L^I6-J^RYO;>%\9
MVR2!3^M %JBJ/]M:5_T$[/\ [_+_ (T?VUI6,_VE:?\ ?Y?\: +U%4O[8TS!
M/]HVF!U_?+_C62_C_P (HY1O$>G!E)!'GC@T ='17-CX@>$#_P S'IW3/^O%
M7+'Q5X?U)F6SUFQF*C+!9AQ0!L455_M/3^?].M>.O[Y?\:/[3L.?].MN/^FR
M_P"- ')3?\ELMNG_ "!#_P"C#7;UPAGAF^-4#0RI(!HA!*,#@^8?2N[H ***
M* "BBB@#%\76<]_X.U>TM8_,N)K618T'\1QTJ/P?JUGJWABQDLY=_DPI!,A&
M&CD50&5@>AR*WJY'7-)O](U*3Q'X=@\V=P/M^GH<"\4="O82#L>_2@"OJUG;
MZ->2-]EGD^TN&M)XSAH9?[F[LO?%1H4BCDBUA6F\2,X\C8P5W[KY1[*._P"M
M='87VE^+-#$T0\ZUF&)(W&&1AU5AV8&N=U*TDT=Y;O4K>ZOS&<VE_;C=+ /X
M4*CMZGH>] #)MMO;,GB-9;C7B#]D,) :0]O) ^Z1W_.H(RB1M_PERN^L%?\
M02,9(XP(\=),XS]/2G6-S'<6[7>O7+3:VG_'L;4 C!Z"$#[Q]:F4"59/^$I8
MKJD?SV2H>@_A,>.KYZ_6@!D,@A:1/%^Z34@/]"8#&Y>PCQ_RTSC/>G$,@QXN
M#O,P_P")>T?4>BC'_+7W[TU2)5E_X2YF74XQNLUBZD=C$.\F< C\*07!2-Y/
M&TQBEB7?9[?E&/48ZR>H[4 +;R-& /&89BT>; /@\8^[QUF_R*99VM_XBU%;
M'5H_/LX")0)""8E[(_K+ZGL*BL[75_%2^7>Q;X86'V>\D&%5?[ZCO+VST%=[
M96,&GVP@@4A0226.68GJ2>YH L*H50JC"@8 '84ZDHH *Y_1% \5^*"!R9[?
M/_?A:Z#O7/Z)_P C5XHXY^T0<_\ ;%: .AHHS10 E%%% !1110 9K/N?^0S8
M?23^5:%9UU_R'+#V23\>* -&BBB@ HHHH **** "BBB@!*6BB@!/>E%%%  3
M1110 ?E^5)CV'Y4M% #=H.?E'/7BD,<9SF-#_P !%/HH B:V@<$-!$P/4%!2
M&UM\\V\1XQ]P5-10! ;*U)R;:$_]LQ1]BM>?]%A_[]BIZ* *QL;,];2 _P#;
M,4'3[(];.W_[]BK-% %;^SK$];*W/_;(4W^R]/Y_T"UY_P"F2_X5;HH I#2-
M,'_,.M/^_*_X4'2-,VG_ (EMIT_YXK_A5VC(H XO1X9-4\)V6A26,R1B(1W3
M3Q[5"@\J/4FND&A:0 !_9=E@#'^H7_"M#K10!G'P_HIY.D6!.,?\>Z_X4G_"
M.Z'_ - ;3_3_ (]D_P *TJ* ,P^&]"/_ #!=._\  9/\*0^&M!/!T33C_P!N
MR?X5J44 97_",: ?^8'IO_@*G^%4-;\,Z"F@ZDZ:)IRN+64@K;(""$/M7250
MUW_D7M3_ .O27_T T 9.B^&- ET#3GDT/3F=[6(LS6J$D[!UXJ/Q%X7T)?#F
MIM#H>GK,+:0HT=JNX-M.",#.:V="_P"1=TS_ *](O_0!6A0!R=[]H\16EM'I
MB82T:.<3SJ56210"H7N<'KFLW4DM_$?CKP_%>Z69([>&Z^T0W,&Y%8JH!Y&"
M"<X-=]1VQ0!Q7B+PMX?@GT+R=%T^+?JD:MY=LB[EV.<' Z<"MH^$/#IY_L6R
M_P"_0J/Q,2)_#^!G_B;1Y^FR2M^@##/@WPV3G^Q;+/M$*:?!7AKC_B2VG'^Q
M6]10!S__  @_AC&/[%M>!@?+5>_\#^&5TRZ*Z#9,ZP/L)A#$'!QBNHHH \U\
M%.UW\-M,T&&WF,TD;1SB2,JL*;SD-D=QQCWKID\ ^$U51_PCVG'  SY KI,F
MB@#QC5?"^@1:\(H]*M%1M=@A*"(8V%,E?IWIA\,Z$+&V?^R+,LUK>NQ\L<E&
MPI_"KOB/4TL?%+0S6UXWEZS#=%H[61U\H)@MD#'6J?\ PD%D;*WC^SZB"EK=
M1L/L$O#2-E1]WO2&.UKPOH,=K=/'I%FC?V1:2X6,<.TH!/U(XK0C\(>'CJS)
M_8ED4_MQH<&(8V>1G;],\U0UCQ#9745W'!;ZBP?3;2W3_09>727<P^[V%:,?
MBG2_[3,ICU 1MK#W6[[#+@1^3M#?=[GB@1S5EX9T2:QM6?3+<LWAVYG)V?\
M+19@ WU XK>O_!_AQ-6$:Z1:*IU2PCVB,?=:,%A]#WK&L=7MX;2V0Q7JNF@7
M%HP-G+Q*TNY5^[Z<UMW?BC3IM7\Y!=M%_:5E-N^QRCY$CPY^[V- %WP[X?L-
M'UZ_UC3M/CC6RO)8)(X(_F,;*O(]AC.*J1:;HWBCXR:F;VUBO;==/1D$J'&<
M^]:?AWQGHME-JSW$MS&MQ>M+$3:2\K@8/W:LZ-JEOK7Q,FO+".5K4:6J-*\+
M( ^\G'('.#3 U?\ A7?A#_H7[+_OBD_X5UX0_P"@!9],?<KJ** .7_X5SX0_
MZ %I_P!\TG_"N/!_'_$@M./]FNIHH Y4_#?P>0!_8-KZ=*/^%;>#_P#H VWZ
MUU5% '*?\*V\'\?\2*WXZ<G_ !H'PU\'@ ?V'!@>Y_QKJZ* ,/1_"&@:!=FY
MTO38K:8IL+J3G'IS6Y110 4444 %%%% !111VH Y'5=+OM!U67Q!H<1GBD!:
M_P!-0@>>?^>BG^\/UK5L_%6AWMI%<)JEJBR#.R65593Z$$\&MFN-\7>&M#FM
M[,RZ39L9]1@64^2,N"W()]Z )+RT\(7=VEXFIV-M>(Y=)X+I%*GH3C..@K.O
M;.UO+T7,GC*PE>+FT$KQGR3_ 'N",FM<_#CP;_T+EA_W[H_X5SX-_P"A<L/^
M_= &->V5OJU[!<7WC'33) 08C&8P8F'\2Y)P36PJ>&99()K[6+/4)X6+1R7%
MRAVGU !P/RI?^%<>#?\ H7+#_OW1_P *Y\&CIX=L1_P"@#6&O:*% &K:?CL!
M<)_C2_V_HW_06L/_  )3_&LC_A7'@WG_ (IRQY_V*/\ A6_@W_H7;'_OB@#7
M&OZ-_P!!>P_\"4_QI?[>T<_\Q:P_\"4_QK'_ .%<>#?^A<L?^^*0_#?P83SX
M<L?^^* -G^WM'_Z"UA_X$I_C65X<N(+KQ'XFGMI4EC:X@Q)&P93^Y7H147_"
MMO!G3_A'+'_OBF^$-+LM&U;Q%8Z=;QVUJES$4BC& N8ES0!UM%)2T )1110
M4444 %9]QG^VK'CHDG\JT*SKG_D.67/\$G'X4 :-%%% !1110 4444 )2T44
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %&*** #%%%%
M !1110 4444 %9^N?\B_J?'_ "Z2_P#H!K0JMJ-L]YIEW:HP5YH7C5FZ LI&
M3^= $&A<>'M,[?Z)%_Z *T*Y2RA\:65A;6HCT!Q!$L>[S)N=H ST]JG\SQJ!
MS;Z"?I)+_A0!TE%<T)O&HQFTT0\]I9.GY4OG^,QULM'/TE?_  H E\3#_2/#
M_)'_ !-H_P#T7)6_7*/:>)]2U#3#?P:;#;6EV+AVB=BS85A@ _[U=70 4444
M %%%% !1110 9/K1D^IHHH ,GU-&3ZT44 +D^M(>:** $*@]A^5  '0 ?04M
M% !1110 4444 %%%% !1110 4444 %%%% "T&BDH *6D[4O:@!*PO%!Q!I?(
M'_$TMN3_ +U;M8'BK'D:5D9_XFMMQ_P.@#?-%%% "T4E%  *7M110 4444 %
M<]H7_(Q^)>"/])BY]?W2UT/>N?T+_D8/$9S_ ,O,7&.G[H4 =!24M)0 4444
M %%%% !6?/D:W:=,&-\UH5GSY.N6G&<1OSZ4 :%%%% !1110 4444 %%&**
M"BBB@ HHHH *,44@H 6BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHH[4 %%%% !1110 4444 %%%% !112T
M )1110 4444 %%%':@ HHHH **** "BBB@ HHHH **** "BBB@ I:2B@ K!\
M58\G2?\ L*VW_H5;U8'BK_4Z3SC_ (FMM_Z%0!T'>BD/6B@ I:2B@!:*** "
MBBB@ [U@:%G^WO$6<8^U1X_[]BM\=:Y_0AC7?$1QUNH_Q_=B@#H**** $HHH
MH **** "J$P_XG=L?^F3U?JA+_R'(.?^6+<>M %^BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ I:2EH 2
MBBB@ HHH) &2>!0 45'#<0W";X)4E3.-R,",U)0 4444 %%%% !1110 4444
M %%%+0 E%%% !1110 5@^*21#I.,?\A6V_\ 0JWJP/%?^JTCC/\ Q-K7_P!#
MH WSUHI3UI* "BBB@!:2EI* %HH%% "#K6#H6#KGB'!_Y>H^/^V8K?'6L'0O
M^0SK_P#U])_Z * -ZBBB@!**** "BBB@ K/D)_MZ <8\AOYUH5E23(/%$$!'
MSFU9P?;=B@#5HHHH **** "BC%% !124M !111UH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH ***4=10!R.H?$OPGI>H36-WJFRX
MA;;(HB8[3Z9 K*U?XJ>$+C1+^&'5LRR6TJ(/*<98J0.U6/A^B2:GXO+(C?\
M$X?J,_PK7;>3%_SQC_[X% ''NL'AWPMINN01-$(((/M21]'C8*&+#VSG\*>/
MBGX,/36H_P#OAO\ "NPVC;MP,>F*KW.GV5W"8;FT@FB."4>,$&@#FA\3_!K?
M\QN$?4&@?$_P:3_R'+<?7-:W_")^'<@_V'I_'3_1U_PI/^$2\.?] +3O_ =?
M\* ,P?$SP<>FN0?D:7_A97@[_H.V_P"M='#8VEO"L,-K!'$G"HL8  I_V:#_
M )X1?]\"@#F?^%E>#O\ H.V_ZT?\+*\'?]!VW_6NF^RV_P#S[Q?]^Q2&TMCU
MMH?^_8H YK_A97@[_H.VWZT?\++\'?\ 0>M1]2:Z3[%:'_EU@_[]BH+K1-*O
M83#=:;:31DY*O"I&: ,+_A9?@W_H8+3_ +ZH_P"%E^#/^A@M/^^JO_\ "&^&
M?^@!IWI_Q[K_ (4G_"%^&#_S+^G?^ ZT 4?^%E^#/^A@L_\ OJE_X65X,_Z&
M&R_[[J^_A#PW(%#Z%I[!1M7,"\#TIG_"%>%_^@!I_P#WX6@"K_PL?P=_T,5C
M_P!_*</B)X/8X'B*P_&2K2>#/#,;K(N@Z>'4Y!\@=:O?V-I?_0-M/^_*T 9'
M_"P?"!_YF/3_ /OZ*QO$7C;PM=1:7Y&OV$GEZG;R,%E'RJK9)/M[UV/]C:7_
M - VT_[\K2?V+I?_ $#;3_ORM &5_P )]X1)X\1Z;_W_ !2_\)[X2_Z&/3/_
M  (6M3^Q=*_Z!MI_WY6C^Q=*_P"@;:?]^5H S/\ A//"7_0QZ9_X$+1_PGGA
M/_H8],_\"%K3_L32O^@9:?\ ?E:/[$TKG_B66G_?E: ,T>._">,_\)'IG_@2
MO^-!\=^$@"3XDTL ?]/*_P"-:/\ 8FD_] RSY_Z8K7/^.M'TR/P)KCQZ?:HX
MLW(98@".* .LAFCN(8YH9%DBD4,CJ<A@>A!J2L?PK_R*&C<8_P!"A_\ 0!6Q
M0 #K6!H.?[8U_/\ S]K_ .@"M_O6#H'_ "%]?_Z^U_\ 0!0!O4444 )1110
M4444 %8<O_(\6W'_ "XM^'S5N5AR 'QO![6#?^AF@#;I:Q/%>N/X<\.W.J1V
MPN9(BH6(MM#%F '/XUF#5_&YY_X1C3F7&1C42,_^.4 ==17)_P!K^-@3_P 4
MK8''<:G_ /84'6?&@_YE.R/TU/K_ ..4 =917(G6O&@S_P 4C:$CTU/_ .PI
M/[=\:8S_ ,(=;_3^TA_\10!U]%<<=?\ &8_YDR(_341_\30?$7C$'_D2U_#4
M%_\ B: .QHKC#XF\8 \^!V/TOU_PH_X2?Q:,_P#%$2G'7%ZG/TXH [.BN-_X
M2?Q6,_\ %$3<=<7B<_2@>*/%7?P/<=<<7:4 =E17&'Q5XI'_ #(UT?I=QTG_
M  EGBG!/_""7OL/M4?\ C0!VE%<3_P )=XH[^ K_ /\  J/_ !I#XQ\4#_F0
M=1_"XC_QH [?O17$'QGXD R? .I_A-'_ (T?\)IXB'7P%JO_ ']C_P : .WH
MKB3XU\0#_F0]6SG_ )Z1_P"-'_":Z_SGP'J_O\\?_P 50!VU%<3_ ,)MK@^]
MX%UD8Z_-'_\ %4O_  FVL@\^!]9P.N#'_P#%4 =K17$_\)SJPZ^!];'./^6?
M_P 51_PG>I]_!&N#\$_^*H [:BN)/CW4<?\ (E:Y_P!\I_\ %4G_  GU_P Y
M\%Z[_P!\)_\ %4 =O17$?\)_>]_!FO?]^T_^*H_X6#=C.?!VO_\ ?I?_ (J@
M#MZ*X@_$*X )/@[Q ,?],5_^*H_X6)-SGPAX@&#C_4+_ /%4 =O17$?\+$DS
M_P BCX@^OV=>G_?5*/B(V"3X2\1 #_IV7I_WU0!VU%<3_P +$QU\*>(ACK_H
MR_\ Q5+_ ,+%4,0?"WB/@XR+5?\ XJ@#M:*XO_A8L8Z^%_$?_@(/_BJ0_$>
M=?#/B3_P#'_Q5 ':T5Q1^)%L,_\ %->(^/2R'_Q5'_"R;7G_ (ISQ'_X!?\
MV5 ':T5Q7_"R;3'_ "+OB/\ \ ?_ +*E_P"%DV>/^1>\0C_MQ_\ KT =I17&
M?\+(L<9.@^(!_P!N)_QH/Q)T\<G1=>'UL3_C0!V=%<8/B3IIZZ/KR_6Q:G#X
MD:6?^87K?O\ Z W% '8T5Q__  L;2^0=-UH8Z_Z"]*/B-I/_ $#]9'_;@_\
MA0!U]%<A_P +'TCG-CK Q_TX2?X4H^(VCG/^A:N,>MA)_A0!UV:*Y%OB-HJY
M_P!%U8X..+"3_"C_ (6/HF<&WU7_ ,%\O^% '745R7_"Q]#QGR-4_P#!?+_\
M31_PL;0?^>>I_P#@OE_^)H ZVE'45R7_  L70<X*ZD.<?\@^;_XFE_X6+X?'
M)_M$8./^0?-_\30!2^'O_(2\8''_ #&7_P#05KN*\_\ A?=Q7\GBJ[A+F*76
M'9=ZE3C:O4'D5Z!0 4444 %%%% !1110 4444 %%%% !1110 4444 ':BBB@
M HHI: "BDHH *6DI: $KG?'O_(@Z[_UYO_*NCQ7.>/<_\(#KO/\ RYO_ "H
MM^%/^10T;G/^A0_^@"MBLCPL,>$=&&/^7&'_ - %:] "=ZP= _Y#'B#_ *^U
M_P#0!6_WK T#_D+Z_P#]?:_^@"@#?HHHH 2BBB@ HHHH *PFY\=(/33<_P#D
M0UNU@$Y^( YZ:7G'_;4T 9OQ./\ Q0USUYGA''_705UZCY%^@KC_ (GD_P#"
M%2CUN8 /^_@KLA[]: $[T>U+10 F*6BB@!,4M%% "8I<444 %(!2T4 (:,4M
M&* $Q1BEHH **** "BBB@ Y]:.:** #)HR?6BB@ Y]:,GUHHH .?4T9/K110
M 9/J:,GU-%% !D^M&3ZT44 &3ZT9/J:** #)]:,GUHHH ,GUHR?6BB@ R?6C
M)]3110 9/K1D^M%% !D^IHR?6BB@ R?6C)]3110 9/J:,GUHHH ,GU-&3ZFB
MB@ R?4T9/K110 9/J:4$Y'-)2CJ* .&^'G-[XM/?^VI>?7Y17<5POPX.;KQ;
M_P!AN7^0KNJ "BBB@ HHHH **** "BBB@ HHHH *6DHH **** #M10*6@!**
M** "BBES0 E%%% "US?C_CX?Z]_UYO\ RKH\US?Q!_Y)]KW_ %Y/_*@"]X6&
M/".C<Y_T&'_T 5KUE>&/^13T;M_H,'_H K5H .]8'A__ )"VO_\ 7V/_ $ 5
MOCK6#H'_ "%->_Z^Q_Z * -ZDQ2T4 )1110 "BBB@!,U@@_\7"88_P"82.?^
MVQK?KGAC_A8K\\_V0O\ Z.- &;\4/^1*?_K[M_\ T8*[,]:XSXH?\B6W_7Y;
MX_[^"NS/4T %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !2CJ*2E'44 <+\.?^/KQ;_V&Y?Y"NYKAOASC
M[5XM .?^)W+_ "%=S0 4444 %%%% !1110 4444 +24M)0 4444 +2444 %+
M244 %%%% !1110 4444 %<W\0?\ DGNO?]>;_P JZ05S?Q!_Y)[KW_7F_P#*
M@"_X8_Y%/1O^O&'_ - %:M9?AG_D5-&_Z\8/_0!6K0 G>L+0/^0IKW_7X/\
MT 5O#K6#H QJFO'_ *>Q_P"@"@#=I:2B@ HHHH **** "N<4C_A94@[_ -C+
M_P"CFKHZYM?^2F2?]@5/_1S4 9_Q1_Y$W_M]MO\ T8*[0]37&?%'_D31_P!?
MMM_Z,%=F>IH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "E'44E ZB@#A/AMC[1XMQ_T')OY"N[KA?AO
M_KO%>!_S&YOZ5W5 !1110 4444 %%%% !1110 4444 %+244 %%+24 %+24M
M "4444 +24M% "44M% "5S?Q!'_%O-?_ .O-_P"5=+7-?$(_\6\U_P#Z\W_E
M0!H>&<_\(IHW_7C!_P"@"M6LOPU_R*FC?]>,'_H K4H !UK!T ?\3/7?>['_
M *"*WN]86@?\A+7/^OL?^@B@#=I*6B@!**** "BBB@ KFU_Y*=)_V!4_]'M7
M2=*YM?\ DIDA_P"H*G_HYJ ,_P"*(SX. _Z?K;_T8*[0]37%_$\9\((.YO[;
M'_?P5VA!R>* "BC!]*,'T- !11@^E&#Z4 %% !]*,'TH **,'THY]* "BBB@
M HHHH ***3- "T444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4HZBDI1U% '
M"?#?_7>*^O\ R&YNOX5W5<)\-L>=XL_[#D_]*[N@ HHHH **** "BBB@ HHH
MH **** "EI** %I#110 4M)10 M)2T4 &:*2B@ I:2EH *YGXA?\D\U__KS?
M^5=-7,_$/_DGFO\ _7D_\J -'PU_R*FC?]>,'_H K5K*\-?\BIHW_7C!_P"@
M"M6@ '6L+0/^0CKG_7W_ .RBMSO6)H'_ "$-:_Z_/_910!N444E !1110 =Z
M*** "N<7_DI,G_8'3_T<U='7.K_R4B7_ + Z?^CFH N^(=!M?$FDMIUX\J1%
MUDW1'#!E.1@UB_\ ""#K_P ))KO_ ($__6KKZ* .2'@<@Y_X237/_ @?X4?\
M(.<?\C)KG_@0/\*ZVDQ0!R?_  @[=O$NN#C'_'P/\*3_ (0>7:0/%.NC/_39
M?_B:Z[%&* .0_P"$'N ./%VO#/\ TU3_ .)I?^$*O1T\8:Z/^!QG_P!EKKJ*
M .2'@[45Z>,]=_\ ()_]DIX\):H""/&FM_\ ?,/_ ,17544 <P/"^K#_ )G/
M6?\ OW!_\;I?^$8U;_H<M8Z8_P!7!_\ &ZZ:B@#F?^$9U?MXSU?/_7*#_P"(
MIK>&=<_A\:ZF/K;P'_V2NHHH Y-O#/B/^'QQ?CZVL'_Q-1GPSXJYV^.;K\;.
M'_XFNPHH X[_ (1KQ;@#_A.)_P#P"B_PI?\ A&_%N?\ D=I?_ */_"NPHH Y
M#_A'O%O_ $.C_P#@%'_A3AH'BT=?&3'_ +<H_P#"NMQ10!R@T+Q8/^9O)^MD
ME-.A^+P./%R9][):ZVB@#CFT+QJ?N>,(1];!:8^A>.\';XQM1Z9T\?XUVE%
M'#G0OB!SCQE8X]].'^-)_87Q#Q_R.6G_ /@M_P#LJ[FB@#AO["^(F?\ D<M.
M_P#!;_\ 94O]A_$/'_(X:=_X+?\ [*NXHH XC^Q?B%_T-VG?^"T__%4X:-\0
M1_S-FFG_ +AQ_P#BJ[6B@#B_[(^( _YFK3#]=//_ ,51_97Q"'3Q-I)^MBW_
M ,57:44 <2VF_$53\OB#1V^MFP_K36L/B2 =NMZ*WUMF']:[BC% '"&R^)@Z
M:MHAX[P-_C33:?$\'C4M#Z?\\6_QKO:* .!^R_%#_H):'_WZ:C[-\4?^?_0O
M^_;5WU% ' _9_BA_S_:#_P!^V_QIP@^)X_Y?- /UC?\ QKO** .#$/Q/_P"?
MO0#_ -LW_P :4Q_$\=+CP\>?[C_XUW=% '!$?%$='\.M^#C^M-9OBH/NIX</
MU,@KOZ* //?.^+(SBU\,GZR24AN/BT <6/A@_P#;62O0Z* /.C<_%WG_ (E_
MA?\ [_24?:_B[_T#?#'_ '_DKT6B@#SO[7\7/^@7X8_[_P E'VSXN?\ 0*\,
M?]_Y*]$HH \\^V?%O_H%>&?_  (DI?MOQ9_Z!/AG_P ")*]"HH \^%[\6/\
MH#^&C_V\R4X7_P 51UT;PW_X%2?X5W]% 'E>A:;\2]!;46ATK0)#?7;W;[[M
MOE9NPXZ5LB_^)_?0_#Y^EX_^%=W10!PO]H?$T?\ ,"T'_P #&_PI1J/Q,'70
M-"/TO&_PKN:* .&_M3XEC_F7-%/TO3_A2'5?B6/^9;T8_P#;X?\ "NZHH X,
MZO\ $L?\RSI!X[7AI/[:^)6/^17THG_K\-=[10!P/]M_$OOX5TO\+PT?V[\2
M<_\ (IZ;_P"!E=]10!P/]O?$C/\ R*.G?^!G_P!:G'7_ (B]O"%A_P"!O_UJ
M[RB@#A!K_P 0P3GP?9$=L7H_PIP\0>/\\^#;3'_7\/\ "NYHH XC_A(/'N/^
M1-ML_P#7^/\ "E_X2'QUS_Q1D'M_IX_PKMJ,4 <9_P )#XVY_P"*,B]O^)@O
M_P 33AXB\:=_!4?_ (,5_P#B:['%+0!QP\1>,L<^"DS[:BO_ ,31_P )%XQ[
M^"E_\&*__$UV%+B@#CCXB\89&/!*X_["*_\ Q-'_  D?C$8SX)&<<XU%>O\
MWS7844 <=_PDGC#_ *$?_P J*?\ Q-)_PDOC#/\ R(Q_\&*?_$UV=&* .,7Q
M-XQ[^!6X'/\ Q,4_^)K*\1:CXRU[PYJ&DCP6T+7<#1"4WZ$*3WQCFO2,44 4
M-$MI;/0--M9AME@M8HW'HRH ?U%7Z**  #FL+0/^0AK?_7Y_[**W1UK#T$#[
M=K7/_+Y_[** -NC-+10 E%%% !1110 5QVHZUINB_$)I=2O(K5)-)4(9#C.)
M6S78U%);03$&6"*0C@%T!_G0!AKX[\+,,KK=J>,\-1_PG/AC_H,VW3/)K9^P
M6?\ SZ6__?I?\*1M.L7^]96Q^L2_X4 9(\;>&23C6;7C_:IW_"9^&_\ H,VF
M?=Q6A_9&FD<Z?:_]^A33HFE'KIMH?^V0H I_\)AX<_Z#-G_W\%._X2SP^<XU
MFR/TF%6#H.D?] RT]?\ 5"D_L#1\?\@NT_[]"@"/_A*- YQK-B<=A,M.'B30
MVZ:Q8\?]-U_QIP\/Z/\ ] NT_P"_0H_L#1_^@7:?]^A0 ?\ "0:+Q_Q-['!&
M?^/A?\:=_;ND?]!6RQ_UW7_&F_V!HY_YAEI_WZ%)_P (]HV1_P 2NT_[]B@"
M0:UI.,C4[/'7_7K_ (T\:OIAZ:C:G_MLO^-5CX9T,]=)M/\ OV*8?"N@$_\
M((M/^_= %S^UM-QD:A:D?]=E_P :4:IIY)Q?VQQU_>KQ5'_A$_#YZZ/:?]\4
MG_"(^'O^@/:?]\4 :/\ :-EDC[9!_P!_!2_;[/I]K@_[^"L[_A$O#_\ T"+7
M_OBE_P"$4T =-)M?^^: -#[?9D_\?<'_ '\%'V^S'6[@'_;050'A;0EZ:5;#
M_@-+_P (OH7_ $"K;_OF@"\-0LSTNX#QG_6"C^T+(C/VN#IG_6#I5$>&-#_Z
M!=MTQ]R@^&-#/_,*MO3[M %_[;:<_P"DP\#)^<<4INK<9S/&,?[0K-/A30#U
MTFV_[YII\(^'CUTBV/\ P$_XT :PN(3_ ,M8^/\ :%*)8R>)%/XUC'P;X=)R
M='M?R/\ C33X+\-GKHUMUST/^- &YO7^\/SI<BL/_A"_#?\ T![;\C_C0/!G
MAL 8TBWX]C_C0!NT5A_\(;X<X_XE%OP,=^GYTH\'^'1TTFWZ8Z'_ !H VZ*Q
M?^$0\/C_ )A5OQ]?\:/^$2T#&/[+@QT[_P"- &U16(?".@D8&FQ#MPS#^M(?
M!^@G_F'K] [?XT ;F:3-8)\&:$1Q:,/I*W^-,/@G1"?]1,.<\3MR: .AI:YT
M^"-%/_+.X'.>+ANM)_PA&C>EW_X$M0!T=%<X/!&CCH;P?]O+4#P3I Z&\';_
M (^6H Z.C-<[_P (5I/]^]Z8_P"/ENE'_"%:3_?O>F/^/ENE '149KGO^$,T
MK_GI>_\ @4U'_"&:9D_OK_\ \"FH Z'-%<X?!6G'_E[U,?2\:F'P/IQ_Y?M6
M'TO6H Z;-&:Y9O FGN,'4=9'.>+]QFFCP#8 DC5-<&3G_D(/0!U=%<K_ ,()
M9?\ 06UWKG_D(O2?\(%9_P#09U\?]Q%Z .KHKE?^$#LQ_P QK7__  8O2CP)
M9C_F,:]Z?\A%Z .IHKEQX&LQ_P Q?7>F/^0@]*/ ]F/^8MKA^NH/0!T]%<R/
M!-F#_P A76NF.;]J/^$)L\Y_M36ON[?^/]NE '345S?_  AEID_\376NF/\
MC^:D/@V#'&L:T/I>&@#I:*YG_A#8^VMZT/\ M[-!\&J>FO:U_P"!9H Z;O1F
MN8_X0YO^AAUKW_TFD/@U\$#Q)K8S_P!/- '4=:*Y?_A#I@?^1FUSKG_CX_SQ
M2_\ "(3]O$^N#G/_ !\4 =/17,?\(A<8_P"1HUS_ ,"*!X2N1_S-&M]?^>]
M'4<T<US/_")W/_0SZWU_Y[BE_P"$5N<Y_P"$FUG_ +_"@#I*.:YQ?"UT!@>)
MM8/N912+X7O$  \3:N< CYI : .DI:YG_A%;S'_(T:QTQ_K!_G-+_P (Q?8
M_P"$GU;([[AS0!TN#17,CPQJ(.1XJU3ICG;1_P (SJ>!CQ5J7"[>B_YS[T =
M-17,_P#"-:KQ_P 57J/ V_<7_.?>@^&]6R/^*KU#IC_5K0!TM+7,'PWK!)_X
MJR_Y_P"F24?\(WK&"/\ A+;_ )_Z9)0!T]%<R?#>L8 _X2R^X&/]2E!\-ZP1
M_P C9?#C'$24 =-17,_\(WK//_%67W)_YXI2_P#".ZSS_P 57>\_],4H Z6B
MN;_X1[6?^AJO/^_"4I\/ZR23_P )5><_],$XH Z,=:P] _X_M:X_Y?#_ "%0
M'P_K!S_Q5-YS_P!,$K0T;23I,4XDNY+J6>0RR2R  D_04 :=%':B@!**** "
MBBB@ HHHH **2EH **** "BBB@ HHHH **** "BBB@ HHHH ;(66)BBAG ^5
M2<9/UI(R[1*9%".0-R@YP?2GT4 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% "T4E% !4;3!9TB\N0[@3N"_*/J>U244 %%%% !11
M10 M%)10 M)110 4444 %%%% !1110 4444 %%%% !1110 5"EPDEQ)"%<-'
MC)*X'/H>]344 %%%% !12T4 )BBBB@ HHHH **6B@!*6DI: $HHI: "BBB@
MHHHH **** "BCO10 4444 )1110 4444 %%%&* "BBD% "T444 %&*** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH 6DHH
MH **** "BBB@ HHHH **** "BBB@ HHHH *,44M "4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444  HHI: $I:2EH 2BEI* "EI*7O0
A 4444 %%%)0 M%%% !1110 4444 '>BDI: "BDI: /_9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>12
<FILENAME>cwco-20211231.xsd
<DESCRIPTION>EX-101.SCH
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--XBRL document created with Toppan Merrill Bridge  9.6.8042.36810 -->
<!--Based on XBRL 2.1-->
<!--Created on: 3/29/2022 8:51:23 PM-->
<!--Modified on: 3/29/2022 8:51:23 PM-->
<xsd:schema xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2021" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:stpr="http://xbrl.sec.gov/stpr/2021" xmlns:naics="http://xbrl.sec.gov/naics/2021" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:currency="http://xbrl.sec.gov/currency/2021" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:exch="http://xbrl.sec.gov/exch/2021" xmlns:us-types="http://fasb.org/us-types/2021-01-31" targetNamespace="http://www.cwco.com/20211231" elementFormDefault="qualified" xmlns:srt-types="http://fasb.org/srt-types/2021-01-31" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:cwco="http://www.cwco.com/20211231" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:us-roles="http://fasb.org/us-roles/2021-01-31" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:srt-roles="http://fasb.org/srt-roles/2021-01-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:attributeFormDefault="unqualified" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:deprecated="http://www.xbrl.org/2009/role/deprecated" xmlns:net="http://www.xbrl.org/2009/role/net" xmlns:dei="http://xbrl.sec.gov/dei/2021q4">
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.cwco.com/role/DisclosureStandardAndCustomAxisDomainDefaults" id="DisclosureStandardAndCustomAxisDomainDefaults">
        <link:definition>99900 - Disclosure - Standard And Custom Axis Domain Defaults</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://www.cwco.com/role/StatementConsolidatedBalanceSheets" id="StatementConsolidatedBalanceSheets">
        <link:definition>00100 - 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://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" id="StatementConsolidatedStatementsOfIncome">
        <link:definition>00200 - Statement - CONSOLIDATED STATEMENTS OF 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://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" id="StatementConsolidatedStatementsOfCashFlows">
        <link:definition>00400 - 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://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2" id="StatementConsolidatedStatementsOfCashFlowsCalc2">
        <link:definition>00405 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Calc 2)</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://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" id="DisclosureAccountsReceivableNetDetails">
        <link:definition>40401 - Disclosure - Accounts receivable, net (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://www.cwco.com/role/DisclosureContractsInProgressDetails" id="DisclosureContractsInProgressDetails">
        <link:definition>40601 - Disclosure - Contracts in progress (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://www.cwco.com/role/DisclosureContractsInProgressDefaultDetails" id="DisclosureContractsInProgressDefaultDetails">
        <link:definition>40601 - Disclosure - Contracts in progress Default (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://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" id="DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails">
        <link:definition>40701 - Disclosure - Property, plant and equipment and construction in progress (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://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" id="DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails">
        <link:definition>40802 - Disclosure - Discontinued operations - Mexico project development (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://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" id="DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails">
        <link:definition>40901 - Disclosure - Intangible assets - Costs and accumulated amortization (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://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" id="DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails">
        <link:definition>40902 - Disclosure - Intangible assets - Amortization of 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://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss" id="DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss">
        <link:definition>41001 - Disclosure - Leases - Lease assets and 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://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" id="DisclosureLeasesComponentsOfLeaseCostDetails">
        <link:definition>41002 - Disclosure - Leases - Components of lease cost (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://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" id="DisclosureLeasesFutureLeasePaymentsDetails">
        <link:definition>41004 - Disclosure - Leases - Future lease 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://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" id="DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails">
        <link:definition>41101 - Disclosure - Income taxes - Components of income before 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://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" id="DisclosureIncomeTaxesProvisionForIncomeTaxesDetails">
        <link:definition>41102 - Disclosure - Income taxes - Provision for 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://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" id="DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails">
        <link:definition>41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (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://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" id="DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails">
        <link:definition>41104 - Disclosure - Income taxes - Net long-term deferred tax 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://www.cwco.com/role/DisclosureEarningsPerShareDetails" id="DisclosureEarningsPerShareDetails">
        <link:definition>41201 - Disclosure - Earnings 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://www.cwco.com/role/DocumentDocumentAndEntityInformation" id="DocumentDocumentAndEntityInformation">
        <link:definition>00090 - Document - Document and Entity Information</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://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" id="StatementConsolidatedBalanceSheetsParenthetical">
        <link:definition>00105 - 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://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" id="StatementConsolidatedStatementsOfIncomeParenthetical">
        <link:definition>00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (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://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" id="StatementConsolidatedStatementsOfStockholdersEquity">
        <link:definition>00300 - 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://www.cwco.com/role/DisclosureAccountingPoliciesDetails" id="DisclosureAccountingPoliciesDetails">
        <link:definition>40201 - Disclosure - Accounting policies (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://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" id="DisclosureAccountingPoliciesCashAndCashEquivalentsDetails">
        <link:definition>40202 - Disclosure - Accounting policies - Cash and cash equivalents (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://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" id="DisclosureAccountingPoliciesDisaggregatedRevenueDetails">
        <link:definition>40203 - Disclosure - Accounting policies - Disaggregated revenue (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://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" id="DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails">
        <link:definition>40204 - Disclosure - Accounting policies - Goodwill and 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://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" id="DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails">
        <link:definition>40205 - Disclosure - Accounting policies - Investments and Other 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://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" id="DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails">
        <link:definition>40206 - Disclosure - Accounting policies - Property, plant and equipment (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://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" id="DisclosureAccountingPoliciesAdditionalInformationDetails">
        <link:definition>40207 - Disclosure - Accounting policies - Additional Information (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://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" id="DisclosureCashAndCashEquivalentsDetails">
        <link:definition>40301 - Disclosure - Cash and cash equivalents (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://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" id="DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails">
        <link:definition>40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (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://www.cwco.com/role/DisclosureInventoryDetails" id="DisclosureInventoryDetails">
        <link:definition>40501 - Disclosure - 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://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" id="DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails">
        <link:definition>40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (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://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" id="DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails">
        <link:definition>40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (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://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails" id="DisclosureDiscontinuedOperationsFinancialInformationDetails">
        <link:definition>40803 - Disclosure - Discontinued operations - Financial Information (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://www.cwco.com/role/DisclosureIntangibleAssetsDetails" id="DisclosureIntangibleAssetsDetails">
        <link:definition>40903 - Disclosure - 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://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" id="DisclosureLeasesLeaseAssetsAndLiabilitiesDetails">
        <link:definition>41001 - Disclosure - Leases - Lease assets and 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://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" id="DisclosureIncomeTaxesAdditionalInformationDetails">
        <link:definition>41105 - Disclosure - Income taxes - Additional Information (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://www.cwco.com/role/DisclosureSegmentInformationDetails" id="DisclosureSegmentInformationDetails">
        <link:definition>41401 - Disclosure - Segment information (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://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" id="DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails">
        <link:definition>41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (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://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" id="DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails">
        <link:definition>41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (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://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" id="DisclosureSegmentInformationAdditionalInformationDetails">
        <link:definition>41404 - Disclosure - Segment information - Additional Information (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://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" id="DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails">
        <link:definition>41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (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://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" id="DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails">
        <link:definition>41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (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://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" id="DisclosureStockBasedCompensationStockOptionActivityDetails">
        <link:definition>41602 - Disclosure - Stock-based compensation - Stock option activity (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://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" id="DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails">
        <link:definition>41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (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://www.cwco.com/role/DisclosureStockBasedCompensationDetails" id="DisclosureStockBasedCompensationDetails">
        <link:definition>41604 - Disclosure - Stock-based compensation (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://www.cwco.com/role/DisclosureRetirementBenefitsDetails" id="DisclosureRetirementBenefitsDetails">
        <link:definition>41701 - Disclosure - Retirement benefits (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://www.cwco.com/role/DisclosureFinancialInstrumentsDetails" id="DisclosureFinancialInstrumentsDetails">
        <link:definition>41801 - Disclosure - Financial instruments (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://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" id="DisclosureFinancialInstrumentsAdditionalInformationDetails">
        <link:definition>41803 - Disclosure - Financial instruments - Additional Information (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://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" id="DisclosureCommitmentsAndContingenciesDetails">
        <link:definition>41901 - Disclosure - Commitments and contingencies (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://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" id="DisclosureRelatedPartyTransactionsDetails">
        <link:definition>42001 - Disclosure - Related party transactions (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://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" id="DisclosureSupplementalDisclosureOfCashFlowInformationDetails">
        <link:definition>42101 - Disclosure - Supplemental disclosure of cash flow information (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://www.cwco.com/role/DisclosurePrincipalActivity" id="DisclosurePrincipalActivity">
        <link:definition>10101 - Disclosure - Principal activity</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://www.cwco.com/role/DisclosureAccountingPolicies" id="DisclosureAccountingPolicies">
        <link:definition>10201 - Disclosure - 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://www.cwco.com/role/DisclosureCashAndCashEquivalents" id="DisclosureCashAndCashEquivalents">
        <link:definition>10301 - Disclosure - Cash and cash equivalents</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://www.cwco.com/role/DisclosureAccountsReceivableNet" id="DisclosureAccountsReceivableNet">
        <link:definition>10401 - Disclosure - Accounts receivable, net</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://www.cwco.com/role/DisclosureInventory" id="DisclosureInventory">
        <link:definition>10501 - Disclosure - Inventory</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://www.cwco.com/role/DisclosureContractsInProgress" id="DisclosureContractsInProgress">
        <link:definition>10601 - Disclosure - Contracts in progress</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://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress" id="DisclosurePropertyPlantAndEquipmentAndConstructionInProgress">
        <link:definition>10701 - Disclosure - Property, plant and equipment and construction in progress</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://www.cwco.com/role/DisclosureDiscontinuedOperations" id="DisclosureDiscontinuedOperations">
        <link:definition>10801 - Disclosure - Discontinued operations</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://www.cwco.com/role/DisclosureIntangibleAssets" id="DisclosureIntangibleAssets">
        <link:definition>10901 - Disclosure - 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://www.cwco.com/role/DisclosureLeases" id="DisclosureLeases">
        <link:definition>11001 - 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://www.cwco.com/role/DisclosureIncomeTaxes" id="DisclosureIncomeTaxes">
        <link:definition>11101 - 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://www.cwco.com/role/DisclosureEarningsPerShare" id="DisclosureEarningsPerShare">
        <link:definition>11201 - Disclosure - Earnings 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://www.cwco.com/role/DisclosureDividends" id="DisclosureDividends">
        <link:definition>11301 - Disclosure - Dividends</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://www.cwco.com/role/DisclosureSegmentInformation" id="DisclosureSegmentInformation">
        <link:definition>11401 - Disclosure - Segment information</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://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses" id="DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses">
        <link:definition>11501 - Disclosure - Cost of revenues and general and administrative expenses</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://www.cwco.com/role/DisclosureStockBasedCompensation" id="DisclosureStockBasedCompensation">
        <link:definition>11601 - Disclosure - Stock-based compensation</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://www.cwco.com/role/DisclosureRetirementBenefits" id="DisclosureRetirementBenefits">
        <link:definition>11701 - Disclosure - Retirement benefits</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://www.cwco.com/role/DisclosureFinancialInstruments" id="DisclosureFinancialInstruments">
        <link:definition>11801 - Disclosure - Financial instruments</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://www.cwco.com/role/DisclosureCommitmentsAndContingencies" id="DisclosureCommitmentsAndContingencies">
        <link:definition>11901 - Disclosure - Commitments and contingencies</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://www.cwco.com/role/DisclosureRelatedPartyTransactions" id="DisclosureRelatedPartyTransactions">
        <link:definition>12001 - Disclosure - Related party transactions</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://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation" id="DisclosureSupplementalDisclosureOfCashFlowInformation">
        <link:definition>12101 - Disclosure - Supplemental disclosure of cash flow information</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://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards" id="DisclosureImpactOfRecentAccountingStandards">
        <link:definition>12201 - Disclosure - Impact of recent accounting standards</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://www.cwco.com/role/DisclosureSubsequentEvents" id="DisclosureSubsequentEvents">
        <link:definition>12301 - 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://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" id="DisclosureAccountingPoliciesPolicies">
        <link:definition>20202 - Disclosure - 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://www.cwco.com/role/DisclosureAccountingPoliciesTables" id="DisclosureAccountingPoliciesTables">
        <link:definition>30203 - Disclosure - 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://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables" id="DisclosureCashAndCashEquivalentsTables">
        <link:definition>30303 - Disclosure - Cash and cash equivalents (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://www.cwco.com/role/DisclosureAccountsReceivableNetTables" id="DisclosureAccountsReceivableNetTables">
        <link:definition>30403 - Disclosure - Accounts receivable, net (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://www.cwco.com/role/DisclosureInventoryTables" id="DisclosureInventoryTables">
        <link:definition>30503 - Disclosure - Inventory (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://www.cwco.com/role/DisclosureContractsInProgressTables" id="DisclosureContractsInProgressTables">
        <link:definition>30603 - Disclosure - Contracts in progress (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://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables" id="DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables">
        <link:definition>30703 - Disclosure - Property, plant and equipment and construction in progress (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://www.cwco.com/role/DisclosureDiscontinuedOperationsTables" id="DisclosureDiscontinuedOperationsTables">
        <link:definition>30803 - Disclosure - Discontinued operations (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://www.cwco.com/role/DisclosureIntangibleAssetsTables" id="DisclosureIntangibleAssetsTables">
        <link:definition>30903 - Disclosure - 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://www.cwco.com/role/DisclosureLeasesTables" id="DisclosureLeasesTables">
        <link:definition>31003 - 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://www.cwco.com/role/DisclosureIncomeTaxesTables" id="DisclosureIncomeTaxesTables">
        <link:definition>31103 - 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://www.cwco.com/role/DisclosureEarningsPerShareTables" id="DisclosureEarningsPerShareTables">
        <link:definition>31203 - Disclosure - Earnings 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://www.cwco.com/role/DisclosureDividendsTables" id="DisclosureDividendsTables">
        <link:definition>31303 - Disclosure - Dividends (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://www.cwco.com/role/DisclosureSegmentInformationTables" id="DisclosureSegmentInformationTables">
        <link:definition>31403 - Disclosure - Segment information (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://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables" id="DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables">
        <link:definition>31503 - Disclosure - Cost of revenues and general and administrative expenses (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://www.cwco.com/role/DisclosureStockBasedCompensationTables" id="DisclosureStockBasedCompensationTables">
        <link:definition>31603 - Disclosure - Stock-based compensation (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://www.cwco.com/role/DisclosureFinancialInstrumentsTables" id="DisclosureFinancialInstrumentsTables">
        <link:definition>31803 - Disclosure - Financial instruments (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://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables" id="DisclosureSupplementalDisclosureOfCashFlowInformationTables">
        <link:definition>32103 - Disclosure - Supplemental disclosure of cash flow information (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://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" id="DisclosureLeasesSupplementalCashFlowInformationDetails">
        <link:definition>41003 - Disclosure - Leases - Supplemental cash flow information (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://www.cwco.com/role/DisclosureDividendsDetails" id="DisclosureDividendsDetails">
        <link:definition>41301 - Disclosure - Dividends (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://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" id="DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails">
        <link:definition>41601 - Disclosure - Stock-based compensation - Significant weighted average 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://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails" id="DisclosureFinancialInstrumentsLevel3ActivityDetails">
        <link:definition>41802 - Disclosure - Financial instruments - Level 3 activity (Details)</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="cwco-20211231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cwco-20211231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cwco-20211231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cwco-20211231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:import namespace="http://xbrl.sec.gov/dei/2021q4" schemaLocation="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xsd:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd" />
  <xsd:import namespace="http://fasb.org/us-roles/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-gaap/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/srt/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/country/2021" schemaLocation="https://xbrl.sec.gov/country/2021/country-2021.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/currency/2021" schemaLocation="https://xbrl.sec.gov/currency/2021/currency-2021.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2021" schemaLocation="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd" />
  <xsd:element name="DocumentAndEntityInformationAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_DocumentAndEntityInformationAbstract" substitutionGroup="xbrli:item" />
  <xsd:element id="cwco_ProfitLossFromSubsidiaries" name="ProfitLossFromSubsidiaries" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_IncomeLossFromDiscontinuedOperations" name="IncomeLossFromDiscontinuedOperations" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" name="LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element name="RetailRevenuesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_RetailRevenuesMember" substitutionGroup="xbrli:item" />
  <xsd:element name="BulkRevenuesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_BulkRevenuesMember" substitutionGroup="xbrli:item" />
  <xsd:element name="ServicesRevenuesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_ServicesRevenuesMember" substitutionGroup="xbrli:item" />
  <xsd:element name="ManufacturingRevenuesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_ManufacturingRevenuesMember" substitutionGroup="xbrli:item" />
  <xsd:element id="cwco_AerexIndustriesIncMember" name="AerexIndustriesIncMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element name="DepositsHeldInForeignBank" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_DepositsHeldInForeignBank" substitutionGroup="xbrli:item" xbrli:balance="debit" />
  <xsd:element name="PercentageOfBadDebts" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_PercentageOfBadDebts" substitutionGroup="xbrli:item" />
  <xsd:element name="BulkMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_BulkMember" substitutionGroup="xbrli:item" />
  <xsd:element name="ServicesMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_ServicesMember" substitutionGroup="xbrli:item" />
  <xsd:element name="ManufacturingUnitsMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_ManufacturingUnitsMember" substitutionGroup="xbrli:item" />
  <xsd:element id="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" name="IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element name="AgreementAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_AgreementAxis" substitutionGroup="xbrldt:dimensionItem" />
  <xsd:element name="AgreementDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_AgreementDomain" substitutionGroup="xbrli:item" />
  <xsd:element name="PlantAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_PlantAxis" substitutionGroup="xbrldt:dimensionItem" />
  <xsd:element name="PlantDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_PlantDomain" substitutionGroup="xbrli:item" />
  <xsd:element name="NSCAguaMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_NSCAguaMember" substitutionGroup="xbrli:item" />
  <xsd:element name="OptionAgreementMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_OptionAgreementMember" substitutionGroup="xbrli:item" />
  <xsd:element name="TypeOfPhasesAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_TypeOfPhasesAxis" substitutionGroup="xbrldt:dimensionItem" />
  <xsd:element name="TypeOfPhasesDomain" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_TypeOfPhasesDomain" substitutionGroup="xbrli:item" />
  <xsd:element name="FirstPhaseMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_FirstPhaseMember" substitutionGroup="xbrli:item" />
  <xsd:element name="SecondPhaseMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_SecondPhaseMember" substitutionGroup="xbrli:item" />
  <xsd:element name="TotalPercentageOfOwnershipInterestInAcquiredCompany" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" substitutionGroup="xbrli:item" />
  <xsd:element name="SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" type="dtr-types:volumeItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" substitutionGroup="xbrli:item" />
  <xsd:element name="RepaymentOfInterCompanyLoanPayable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_RepaymentOfInterCompanyLoanPayable" substitutionGroup="xbrli:item" xbrli:balance="credit" />
  <xsd:element name="TotalVotingInterestPercentageAfterConversionOfLoan" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_TotalVotingInterestPercentageAfterConversionOfLoan" substitutionGroup="xbrli:item" />
  <xsd:element name="PercentageOfVotingInterestAcquiredThroughOptionAgreement" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" substitutionGroup="xbrli:item" />
  <xsd:element name="PaymentsForOptionExercised" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_PaymentsForOptionExercised" substitutionGroup="xbrli:item" xbrli:balance="credit" />
  <xsd:element name="PaymentsToEnterOptionAgreement" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_PaymentsToEnterOptionAgreement" substitutionGroup="xbrli:item" xbrli:balance="credit" />
  <xsd:element name="OptionAgreementExpirationDate" type="xbrli:dateItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_OptionAgreementExpirationDate" substitutionGroup="xbrli:item" />
  <xsd:element name="AguasDeRosaritoSapiDeCvMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_AguasDeRosaritoSapiDeCvMember" substitutionGroup="xbrli:item" />
  <xsd:element name="OperatingLeaseRightOfUseAssetNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_OperatingLeaseRightOfUseAssetNet" substitutionGroup="xbrli:item" xbrli:balance="debit" />
  <xsd:element name="OperatingLeaseAssetsCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" nillable="true" id="cwco_OperatingLeaseAssetsCurrent" substitutionGroup="xbrli:item" xbrli:balance="debit" />
  <xsd:element name="CommitmentsAndContingenciesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_CommitmentsAndContingenciesTable" substitutionGroup="xbrldt:hypercubeItem" />
  <xsd:element id="cwco_CommitmentsAndContingenciesLineItems" name="CommitmentsAndContingenciesLineItems" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element name="CaymanWaterRetailOperationsPercentageOfGrossProfit" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" substitutionGroup="xbrli:item" />
  <xsd:element name="CaymanWaterRetailOperationsPercentageOfRevenue" type="dtr-types:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" id="cwco_CaymanWaterRetailOperationsPercentageOfRevenue" substitutionGroup="xbrli:item" />
  <xsd:element name="WSCMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_WSCMember" substitutionGroup="xbrli:item" />
  <xsd:element name="ConsolidatedWaterBahamasMember" type="dtr-types:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" id="cwco_ConsolidatedWaterBahamasMember" substitutionGroup="xbrli:item" />
  <xsd:element id="cwco_PaymentForLandAndRightOfWayHeldForDevelopment" name="PaymentForLandAndRightOfWayHeldForDevelopment" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_AssetsContinuedOperation" name="AssetsContinuedOperation" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DividendsTextBlock" name="DividendsTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" name="CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" name="CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_OtherAssetsPolicyTextBlock" name="OtherAssetsPolicyTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" name="ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" name="CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_PlantAndEquipmentMember" name="PlantAndEquipmentMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DistributionSystemsMember" name="DistributionSystemsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_LabEquipmentMember" name="LabEquipmentMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_FairValueDeterminingMethodAxis" name="FairValueDeterminingMethodAxis" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_FairValueDeterminingMethodDomain" name="FairValueDeterminingMethodDomain" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DiscountedCashFlowMethodMember" name="DiscountedCashFlowMethodMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_GuidelinePublicCompanyMethodMember" name="GuidelinePublicCompanyMethodMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EstimatedFairValuePercentageSegmentReportingInformation" name="EstimatedFairValuePercentageSegmentReportingInformation" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" name="CapitalizedEngineeringLaborAndMaterialsCostMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" name="CashAndRestrictedCashEquivalentsHeldInForeignBank" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" name="NumberOfDaysAfterConsumptionBillingsAreCollected" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" name="NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" name="AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" nillable="true" type="dtr-types:volumeItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_AccountsReceivableTradeCurrent" name="AccountsReceivableTradeCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_AccountsReceivableOtherCurrent" name="AccountsReceivableOtherCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_WaterStockMember" name="WaterStockMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ConsumablesStockMember" name="ConsumablesStockMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_SparePartsStockMember" name="SparePartsStockMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CapitalCommitments" name="CapitalCommitments" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="cwco_ConstructionInProgressPlacedInService" name="ConstructionInProgressPlacedInService" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_PeriodInWhichConstructionMustBeCompleted" name="PeriodInWhichConstructionMustBeCompleted" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" name="PeriodRequiredToOperateAndMaintainPlantAndAqueduct" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_TradeNameMember" name="TradeNameMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CustomerBacklogMember" name="CustomerBacklogMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" name="IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" name="EffectiveIncomeTaxRateReconciliationPermanentItems" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_DeferredTaxAssetsLandBasisDifference" name="DeferredTaxAssetsLandBasisDifference" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DeferredTaxAssetsStartupCosts" name="DeferredTaxAssetsStartupCosts" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DividendsPerShareDeclared" name="DividendsPerShareDeclared" nillable="true" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_WaterAndSewerageCorporationMember" name="WaterAndSewerageCorporationMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EntityWideRevenuesMajorCustomerPercentage" name="EntityWideRevenuesMajorCustomerPercentage" nillable="true" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" name="CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DepreciationMember" name="DepreciationMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_FuelOilMember" name="FuelOilMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EmployeeCostsMember" name="EmployeeCostsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_RoyaltiesMember" name="RoyaltiesMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_InsuranceMember" name="InsuranceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_MaterialsMember" name="MaterialsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" name="CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ProfessionalsFeeMember" name="ProfessionalsFeeMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DirectorsFeesAndExpensesMember" name="DirectorsFeesAndExpensesMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_AmortizationOfIntangiblesMember" name="AmortizationOfIntangiblesMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_OtherCreditDeviceMember" name="OtherCreditDeviceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_BelowMarketPriceMember" name="BelowMarketPriceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_AtMarketPriceMember" name="AtMarketPriceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_AboveMarketPriceMember" name="AboveMarketPriceMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ManagementEmployeesMember" name="ManagementEmployeesMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EmployeesMember" name="EmployeesMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EquityIncentivePlan2008Member" name="EquityIncentivePlan2008Member" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_CommonStockOptionsMember" name="CommonStockOptionsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_NonExecutiveDirectorsSharePlanMember" name="NonExecutiveDirectorsSharePlanMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_NonperformancebasedGrantsMember" name="NonperformancebasedGrantsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_PerformancebasedGrantsMember" name="PerformancebasedGrantsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" name="AdditionalConsecutiveIndividualRequisiteServicePeriod" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_StockholdersEquityNoteConversionRatioPreferredShares" name="StockholdersEquityNoteConversionRatioPreferredShares" nillable="true" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_StockholdersEquityNoteConversionRatioCommonShares" name="StockholdersEquityNoteConversionRatioCommonShares" nillable="true" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" name="NumberOfDaysOfAverageTradingPriceOfCommonStock" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" name="NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_ClosingPriceOfCommonShares" name="ClosingPriceOfCommonShares" nillable="true" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_RetirementPlanAxis" name="RetirementPlanAxis" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_RetirementPlanDomain" name="RetirementPlanDomain" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" name="TermOfForeignExchangeRiskToDollarForCertainCurrencies" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_EmploymentAgreementBaseAnnualSalaries" name="EmploymentAgreementBaseAnnualSalaries" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment" name="TransfersBetweenInventoryAndPropertyPlantAndEquipment" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" name="NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_PercWaterCorporationMember" name="PercWaterCorporationMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" name="ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" name="ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" name="ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerAxis" name="ContractWithCustomerAxis" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerDomain" name="ContractWithCustomerDomain" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ContractWithCustomerAmountBilled" name="ContractWithCustomerAmountBilled" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_ContractWithCustomerNetOverbillings" name="ContractWithCustomerNetOverbillings" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_BalanceSheetLocationAbstract" name="BalanceSheetLocationAbstract" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" name="DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" name="DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" name="DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_ManagementContractsMember" name="ManagementContractsMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_OneCustomerMember" name="OneCustomerMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_PercNonControllingInterestAtAcquisitionDate" name="PercNonControllingInterestAtAcquisitionDate" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation" name="ScheduleOfSupplementalDisclosureOfCashFlowInformation" nillable="true" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_InventoryCurrentAndNoncurrent" name="InventoryCurrentAndNoncurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" name="NumberOfDaysToSubmitListOfNonRecoverableExpenses" nillable="true" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_ConstructionInProgress" name="ConstructionInProgress" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" name="DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" name="DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" name="DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="cwco_OperatingLeaseDiscontinuedOperationsPayments" name="OperatingLeaseDiscontinuedOperationsPayments" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" name="DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_MexicoProjectDevelopmentMember" name="MexicoProjectDevelopmentMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_OperatingLeaseLiabilitiesContinuingOperations" name="OperatingLeaseLiabilitiesContinuingOperations" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" name="DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" name="IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" name="IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" name="DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="debit" />
  <xsd:element id="cwco_SegmentRetailMember" name="SegmentRetailMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_EstimatedFairValueCarryingAmountExceededPercentage" name="EstimatedFairValueCarryingAmountExceededPercentage" nillable="true" type="xbrli:pureItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_CriteriaForRecognizingInvestmentAtCost" name="CriteriaForRecognizingInvestmentAtCost" nillable="true" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" />
  <xsd:element id="cwco_OperatingLeaseCostsDiscontinuedOperations" name="OperatingLeaseCostsDiscontinuedOperations" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_ContractWithCustomerRetainage" name="ContractWithCustomerRetainage" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_DiscontinuedOperationsNonRecoverableExpenses" name="DiscontinuedOperationsNonRecoverableExpenses" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element id="cwco_GrossProfitMember" name="GrossProfitMember" nillable="true" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" abstract="true" xbrli:periodType="duration" />
  <xsd:element id="cwco_NumberOfCustomers" name="NumberOfCustomers" nillable="true" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" />
  <xsd:element id="cwco_PaymentsToAcquireCertificatesOfDeposit" name="PaymentsToAcquireCertificatesOfDeposit" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="credit" />
  <xsd:element id="cwco_ValueAddedTaxReceivableAllowance" name="ValueAddedTaxReceivableAllowance" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" xbrli:balance="credit" />
  <xsd:element id="cwco_GuaranteeFee" name="GuaranteeFee" nillable="true" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" xbrli:balance="debit" />
  <xsd:element name="EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" id="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="duration" abstract="false" />
  <xsd:element name="OperatingLeaseLiabilityIncludingDiscontinuedOperations" id="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" xbrli:periodType="instant" abstract="false" xbrli:balance="credit" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>13
<FILENAME>cwco-20211231_cal.xml
<DESCRIPTION>EX-101.CAL
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--XBRL document created with Toppan Merrill Bridge  9.6.8042.36810 -->
<!--Based on XBRL 2.1-->
<!--Created on: 3/29/2022 8:51:23 PM-->
<!--Modified on: 3/29/2022 8:51:23 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedBalanceSheets" roleURI="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfIncome" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfCashFlows" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfCashFlowsCalc2" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountsReceivableNetDetails" roleURI="http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgressDetails" roleURI="http://www.cwco.com/role/DisclosureContractsInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss" roleURI="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesComponentsOfLeaseCostDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesFutureLeasePaymentsDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureEarningsPerShareDetails" roleURI="http://www.cwco.com/role/DisclosureEarningsPerShareDetails" />
  <calculationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" xlink:type="extended" xlink:title="00100 - Statement - CONSOLIDATED BALANCE SHEETS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent_637841838802874276" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838802874276" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositAtCarryingValue" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_CertificatesOfDepositAtCarryingValue_637841838802874276" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_AccountsReceivableNetCurrent_637841838802874276" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_InventoryNet_637841838802874276" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_637841838802874276" order="5" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_637841838802874276" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent_637841838802874276" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838802874276" order="7" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_637841838802874276" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress_637841838802874276" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="cwco_ConstructionInProgress_637841838802874276" order="3" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_InventoryNoncurrent_637841838802884275" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_EquityMethodInvestments_637841838802884275" order="5" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838802884275" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_Goodwill_637841838802884275" order="7" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838802884275" order="8" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_637841838802884275" order="9" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent_637841838802884275" order="10" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_637841838802884275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_637841838802884275" order="11" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities_637841838802894279" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_LiabilitiesCurrent_637841838802894279" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_637841838802894279" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838802894279" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent_637841838802894279" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_DividendsPayableCurrent_637841838802894279" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_637841838802894279" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_637841838802894279" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_637841838802904278" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeCurrent" xlink:label="us-gaap_DeferredIncomeCurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_DeferredIncomeCurrent_637841838802904278" order="7" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_LongTermDebtCurrent_637841838802904278" order="8" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent_637841838802894279" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838802904278" order="9" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_LongTermDebtNoncurrent_637841838802904278" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_637841838802904278" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838802904278" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838802904278" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838802914275" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838802914275" order="6" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities_637841838802894279" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_637841838802914275" order="7" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838802914275" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838802914275" xlink:to="us-gaap_StockholdersEquity_637841838802914275" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_637841838802914275" xlink:to="us-gaap_PreferredStockValue_637841838802914275" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue_637841838802914275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_637841838802914275" xlink:to="us-gaap_CommonStockValue_637841838802914275" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital_637841838802924275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_637841838802914275" xlink:to="us-gaap_AdditionalPaidInCapital_637841838802924275" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_637841838802924275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity_637841838802914275" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_637841838802924275" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest_637841838802924275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838802914275" xlink:to="us-gaap_MinorityInterest_637841838802924275" order="2" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" xlink:type="extended" xlink:title="00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_637841838802924275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_637841838802924275" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_637841838802924275" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_637841838802924275" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_637841838802934281" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperations_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperations_637841838802934281" xlink:to="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838802934281" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838802934281" xlink:to="us-gaap_OperatingIncomeLoss_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss_637841838802934281" xlink:to="us-gaap_GrossProfit_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit_637841838802934281" xlink:to="us-gaap_Revenues_637841838802934281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_637841838802934281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit_637841838802934281" xlink:to="us-gaap_CostOfRevenue_637841838802934281" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss_637841838802934281" xlink:to="us-gaap_GeneralAndAdministrativeExpense_637841838802944280" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss_637841838802934281" xlink:to="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838802944280" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838802934281" xlink:to="us-gaap_NonoperatingIncomeExpense_637841838802944280" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="us-gaap_InterestIncomeOther_637841838802944280" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="us-gaap_InterestExpense_637841838802944280" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfitLossFromSubsidiaries" xlink:label="cwco_ProfitLossFromSubsidiaries_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="cwco_ProfitLossFromSubsidiaries_637841838802944280" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments_637841838802944280" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_637841838802944280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives_637841838802944280" order="5" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_637841838802954282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense_637841838802944280" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_637841838802954282" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_637841838802994283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838802934281" xlink:to="us-gaap_IncomeTaxExpenseBenefit_637841838802994283" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838802994283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperations_637841838802934281" xlink:to="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838802994283" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838802994283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838802994283" order="2" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" xlink:type="extended" xlink:title="00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637241144211588558" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637241144211588558" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToAcquireCertificatesOfDeposit" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" xlink:to="cwco_PaymentsToAcquireCertificatesOfDeposit_637841838803004283" order="1" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_637841838803004283" order="2" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_637841838803004283" order="3" use="optional" weight="1" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838803004283" xlink:to="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_637841838803004283" order="4" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637241144211588558" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_637841838803004283" order="1" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_637841838803004283" order="2" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="us-gaap_PaymentsToMinorityShareholders_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_PaymentsToMinorityShareholders_637841838803004283" order="3" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_637841838803004283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_637841838803004283" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_RepaymentsOfLongTermDebt_637841838803014284" order="5" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838803004283" xlink:to="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_637841838803014284" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637241144211588558" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838803014284" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838803014284" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_ProfitLoss_637841838803014284" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_637841838803014284" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives_637841838803014284" order="3" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForLoanAndLeaseLosses" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses_637841838803014284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_ProvisionForLoanAndLeaseLosses_637841838803014284" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortizationDiscontinuedOperations" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_637841838803024283" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_DepreciationAndAmortization_637841838803024283" order="6" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_637841838803024283" order="7" use="optional" weight="-1" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_637841838803024283" order="8" use="optional" weight="-1" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838803024283" order="9" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_637841838803024283" order="10" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_637841838803024283" order="11" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions_637841838803024283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions_637841838803024283" order="12" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_IncreaseDecreaseInDeferredRevenue_637841838803034282" order="13" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_GoodwillImpairmentLoss_637841838803034282" order="14" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilities_637841838803034282" order="15" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_637841838803034282" order="16" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_637841838803034282" order="17" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories_637841838803034282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_IncreaseDecreaseInInventories_637841838803034282" order="18" use="optional" weight="-1" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_637841838803044284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_637841838803044284" order="19" use="optional" weight="-1" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_637841838803044284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838803014284" xlink:to="us-gaap_ShareBasedCompensation_637841838803044284" order="20" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_637841838803044284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838803014284" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_637841838803044284" order="2" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2" xlink:type="extended" xlink:title="00405 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Calc 2)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_637841838803044284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_ProfitLoss_637841838803044284" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_637841838803044284" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_637841838803044284" order="2" use="optional" weight="-1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" xlink:type="extended" xlink:title="40401 - Disclosure - Accounts receivable, net (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_637050102263978223" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="us-gaap_AccountsReceivableGrossCurrent_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableNetCurrent_637050102263978223" xlink:to="us-gaap_AccountsReceivableGrossCurrent_637841838803054283" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableTradeCurrent" xlink:label="cwco_AccountsReceivableTradeCurrent_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableGrossCurrent_637841838803054283" xlink:to="cwco_AccountsReceivableTradeCurrent_637841838803054283" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DueFromAffiliateCurrent" xlink:label="us-gaap_DueFromAffiliateCurrent_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableGrossCurrent_637841838803054283" xlink:to="us-gaap_DueFromAffiliateCurrent_637841838803054283" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableOtherCurrent" xlink:label="cwco_AccountsReceivableOtherCurrent_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableGrossCurrent_637841838803054283" xlink:to="cwco_AccountsReceivableOtherCurrent_637841838803054283" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AccountsReceivableNetCurrent_637050102263978223" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838803054283" order="2" use="optional" weight="-1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgressDetails" xlink:type="extended" xlink:title="40601 - Disclosure - Contracts in progress (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerNetOverbillings" xlink:label="cwco_ContractWithCustomerNetOverbillings" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAmountBilled" xlink:label="cwco_ContractWithCustomerAmountBilled_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_ContractWithCustomerNetOverbillings" xlink:to="cwco_ContractWithCustomerAmountBilled_637841838803054283" order="1" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerRetainage" xlink:label="cwco_ContractWithCustomerRetainage_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_ContractWithCustomerNetOverbillings" xlink:to="cwco_ContractWithCustomerRetainage_637841838803054283" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_ContractWithCustomerNetOverbillings" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_637841838803054283" order="3" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" xlink:type="extended" xlink:title="40701 - Disclosure - Property, plant and equipment and construction in progress (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637050102264067992" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_637841838803054283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet_637050102264067992" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_637841838803054283" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_PropertyPlantAndEquipmentNet_637050102264067992" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_637841838803064283" order="2" use="optional" weight="-1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" xlink:type="extended" xlink:title="40802 - Disclosure - Discontinued operations - Mexico project development (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_637841838803064283" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_637841838803064283" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_637841838803064283" order="3" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_637841838803064283" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_637841838803064283" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_637841838803064283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_637841838803064283" order="6" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" xlink:type="extended" xlink:title="40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637050102265065346" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill_637050102265065346" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_637841838803074282" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill_637050102265065346" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_637841838803074282" order="2" use="optional" weight="-1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" xlink:type="extended" xlink:title="40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_637841838803074282" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_637841838803074282" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_637841838803074282" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_637841838803074282" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_637841838803074282" order="5" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_637841838803074282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet_637050102265095255" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_637841838803074282" order="6" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss" xlink:type="extended" xlink:title="41001 - Disclosure - Leases - Lease assets and liabilities (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseRightOfUseAssetNet" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet_1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseAssetsCurrent" xlink:label="cwco_OperatingLeaseAssetsCurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseRightOfUseAssetNet_1" xlink:to="cwco_OperatingLeaseAssetsCurrent_637841838803084281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseRightOfUseAssetNet_1" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_637841838803084281" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseRightOfUseAssetNet_1" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_637841838803084281" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseRightOfUseAssetNet_1" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_637841838803084281" order="4" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_637841838803084281" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_637841838803084281" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838803084281" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838803084281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838803084281" order="4" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" xlink:type="extended" xlink:title="41002 - Disclosure - Leases - Components of lease cost (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseCost" xlink:label="loc_us-gaap_LeaseCost" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost" xlink:to="us-gaap_OperatingLeaseCost_637841838803094282" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseCostsDiscontinuedOperations" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost" xlink:to="cwco_OperatingLeaseCostsDiscontinuedOperations_637841838803094282" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="us-gaap_ShortTermLeaseCost_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost" xlink:to="us-gaap_ShortTermLeaseCost_637841838803094282" order="3" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" xlink:type="extended" xlink:title="41004 - Disclosure - Leases - Future lease payments (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_637841838803094282" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_637841838803094282" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_637841838803094282" order="3" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_637841838803094282" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_637841838803094282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_637841838803094282" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_637841838803104280" order="6" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" xlink:type="extended" xlink:title="41101 - Disclosure - Income taxes - Components of income before income taxes (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:to="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_637841838803104280" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_637841838803104280" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_637841838803104280" order="3" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" xlink:type="extended" xlink:title="41102 - Disclosure - Income taxes - Provision for income taxes (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_637050102265613857" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit_637050102265613857" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838803104280" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838803104280" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_637841838803104280" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_637841838803104280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838803104280" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_637841838803104280" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeTaxExpenseBenefit_637050102265613857" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838803114280" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838803114280" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_637841838803114280" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838803114280" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_637841838803114280" order="2" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" xlink:type="extended" xlink:title="41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_637841838803114280" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_637841838803114280" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_637841838803114280" order="3" use="optional" weight="-1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_637841838803114280" order="4" use="optional" weight="-1" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_637841838803114280" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_637841838803114280" order="5" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_637841838803124283" order="6" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_637841838803124283" order="7" use="optional" weight="1" priority="2" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" xlink:type="extended" xlink:title="41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities_637050102265683682" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities_637050102265683682" xlink:to="us-gaap_DeferredTaxAssetsNet_637841838803124283" order="1" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_637841838803124283" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsLandBasisDifference" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="cwco_DeferredTaxAssetsLandBasisDifference_637841838803124283" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsStartupCosts" xlink:label="cwco_DeferredTaxAssetsStartupCosts_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="cwco_DeferredTaxAssetsStartupCosts_637841838803124283" order="3" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_637841838803124283" order="4" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_637841838803124283" order="5" use="optional" weight="-1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_637841838803124283" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_637841838803124283" order="6" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxAssetsNet_637841838803124283" xlink:to="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_637841838803134282" order="7" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredTaxLiabilities_637050102265683682" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_637841838803134282" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities_637841838803134282" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_637841838803134282" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_DeferredIncomeTaxLiabilities_637841838803134282" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_637841838803134282" order="2" use="optional" weight="1" />
  </calculationLink>
  <calculationLink xlink:role="http://www.cwco.com/role/DisclosureEarningsPerShareDetails" xlink:type="extended" xlink:title="41201 - Disclosure - Earnings per share (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:label="loc_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" xlink:label="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:to="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_637841838803134282" order="1" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838803134282" order="2" use="optional" weight="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants" xlink:label="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_637841838803134282" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_637841838803134282" order="1" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_637841838803144281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_637841838803144281" order="2" use="optional" weight="1" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838803144281" />
    <calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838803144281" order="3" use="optional" weight="1" priority="2" />
  </calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>14
<FILENAME>cwco-20211231_def.xml
<DESCRIPTION>EX-101.DEF
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--XBRL document created with Toppan Merrill Bridge  9.6.8042.36810 -->
<!--Based on XBRL 2.1-->
<!--Created on: 3/29/2022 8:51:23 PM-->
<!--Modified on: 3/29/2022 8:51:23 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedBalanceSheets" roleURI="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedBalanceSheetsParenthetical" roleURI="http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfIncomeParenthetical" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfCashFlows" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesDisaggregatedRevenueDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCashAndCashEquivalentsDetails" roleURI="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureInventoryDetails" roleURI="http://www.cwco.com/role/DisclosureInventoryDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgressDetails" roleURI="http://www.cwco.com/role/DisclosureContractsInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgressDefaultDetails" roleURI="http://www.cwco.com/role/DisclosureContractsInProgressDefaultDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsFinancialInformationDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationStockOptionActivityDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRetirementBenefitsDetails" roleURI="http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsDetails" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCommitmentsAndContingenciesDetails" roleURI="http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRelatedPartyTransactionsDetails" roleURI="http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" />
  <link:arcroleRef arcroleURI="http://www.esma.europa.eu/xbrl/esef/arcrole/wider-narrower" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd#wider-narrower" />
  <link:roleRef roleURI="http://www.cwco.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:href="cwco-20211231.xsd#DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="simple" />
  <link:roleRef xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd#eedm" roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
  <link:definitionLink xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="extended" xlink:title="Extensible Enumeration Domain Members">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="us-gaap_LiabilitiesAbstract_1" xlink:title="us-gaap_LiabilitiesAbstract_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_1" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LiabilitiesAbstract_1" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:us-gaap_LiabilitiesAbstract_1 To us-gaap_OperatingLeaseLiabilityCurrent_1" order="3" priority="0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_1" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LiabilitiesAbstract_1" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:title="definition:us-gaap_LiabilitiesAbstract_1 To us-gaap_OperatingLeaseLiabilityNoncurrent_1" order="4" priority="0" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.cwco.com/role/DisclosureStandardAndCustomAxisDomainDefaults" xlink:type="extended" xlink:title="99900 - Disclosure - Standard And Custom Axis Domain Defaults">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationDocumentAxis" xlink:label="dei_DocumentInformationDocumentAxis_1" xlink:title="dei_DocumentInformationDocumentAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentDomain" xlink:label="dei_DocumentDomain_1" xlink:title="dei_DocumentDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="dei_DocumentInformationDocumentAxis_1" xlink:to="dei_DocumentDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:dei_DocumentInformationDocumentAxis_1 To dei_DocumentDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_1" xlink:title="us-gaap_StatementClassOfStockAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_1" xlink:title="us-gaap_ClassOfStockDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_StatementClassOfStockAxis_1" xlink:to="us-gaap_ClassOfStockDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_StatementClassOfStockAxis_1 To us-gaap_ClassOfStockDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis_1" xlink:title="us-gaap_IncomeStatementLocationAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_1" xlink:title="us-gaap_IncomeStatementLocationDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IncomeStatementLocationAxis_1" xlink:to="us-gaap_IncomeStatementLocationDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IncomeStatementLocationAxis_1 To us-gaap_IncomeStatementLocationDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis_1" xlink:title="us-gaap_StatementEquityComponentsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_1" xlink:title="us-gaap_EquityComponentDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_StatementEquityComponentsAxis_1" xlink:to="us-gaap_EquityComponentDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_StatementEquityComponentsAxis_1 To us-gaap_EquityComponentDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis_1" xlink:title="dei_LegalEntityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain_1" xlink:title="dei_EntityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="dei_LegalEntityAxis_1" xlink:to="dei_EntityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:dei_LegalEntityAxis_1 To dei_EntityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis_1" xlink:title="us-gaap_CashAndCashEquivalentsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1" xlink:title="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_CashAndCashEquivalentsAxis_1" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_CashAndCashEquivalentsAxis_1 To us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_1" xlink:title="srt_StatementGeographicalAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_1" xlink:title="srt_SegmentGeographicalDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_StatementGeographicalAxis_1" xlink:to="srt_SegmentGeographicalDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_StatementGeographicalAxis_1 To srt_SegmentGeographicalDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="srt_ConsolidatedEntitiesAxis_1" xlink:title="srt_ConsolidatedEntitiesAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="srt_ConsolidatedEntitiesDomain_1" xlink:title="srt_ConsolidatedEntitiesDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_ConsolidatedEntitiesAxis_1" xlink:to="srt_ConsolidatedEntitiesDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_ConsolidatedEntitiesAxis_1 To srt_ConsolidatedEntitiesDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_1" xlink:title="us-gaap_BusinessAcquisitionAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_1" xlink:title="us-gaap_BusinessAcquisitionAcquireeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_BusinessAcquisitionAxis_1" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_BusinessAcquisitionAxis_1 To us-gaap_BusinessAcquisitionAcquireeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodAxis" xlink:label="cwco_FairValueDeterminingMethodAxis_1" xlink:title="cwco_FairValueDeterminingMethodAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodDomain" xlink:label="cwco_FairValueDeterminingMethodDomain_1" xlink:title="cwco_FairValueDeterminingMethodDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_FairValueDeterminingMethodAxis_1" xlink:to="cwco_FairValueDeterminingMethodDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_FairValueDeterminingMethodAxis_1 To cwco_FairValueDeterminingMethodDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_1" xlink:title="us-gaap_StatementBusinessSegmentsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_1" xlink:title="us-gaap_SegmentDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_StatementBusinessSegmentsAxis_1" xlink:to="us-gaap_SegmentDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_StatementBusinessSegmentsAxis_1 To us-gaap_SegmentDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_1" xlink:title="us-gaap_ConcentrationRiskByBenchmarkAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_1" xlink:title="us-gaap_ConcentrationRiskBenchmarkDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_1" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ConcentrationRiskByBenchmarkAxis_1 To us-gaap_ConcentrationRiskBenchmarkDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_1" xlink:title="us-gaap_ConcentrationRiskByTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_1" xlink:title="us-gaap_ConcentrationRiskTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ConcentrationRiskByTypeAxis_1" xlink:to="us-gaap_ConcentrationRiskTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ConcentrationRiskByTypeAxis_1 To us-gaap_ConcentrationRiskTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_1" xlink:title="srt_RangeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_1" xlink:title="srt_RangeMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_RangeAxis_1" xlink:to="srt_RangeMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_RangeAxis_1 To srt_RangeMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" xlink:title="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" xlink:title="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis_1" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_PropertyPlantAndEquipmentByTypeAxis_1 To us-gaap_PropertyPlantAndEquipmentTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_CurrencyAxis" xlink:label="srt_CurrencyAxis_1" xlink:title="srt_CurrencyAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_AllCurrenciesDomain" xlink:label="currency_AllCurrenciesDomain_1" xlink:title="currency_AllCurrenciesDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_CurrencyAxis_1" xlink:to="currency_AllCurrenciesDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_CurrencyAxis_1 To currency_AllCurrenciesDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementScenarioAxis" xlink:label="srt_StatementScenarioAxis_1" xlink:title="srt_StatementScenarioAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScenarioUnspecifiedDomain" xlink:label="srt_ScenarioUnspecifiedDomain_1" xlink:title="srt_ScenarioUnspecifiedDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_StatementScenarioAxis_1" xlink:to="srt_ScenarioUnspecifiedDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_StatementScenarioAxis_1 To srt_ScenarioUnspecifiedDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis_1" xlink:title="srt_OwnershipAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain_1" xlink:title="srt_OwnershipDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_OwnershipAxis_1" xlink:to="srt_OwnershipDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_OwnershipAxis_1 To srt_OwnershipDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesAxis" xlink:label="cwco_TypeOfPhasesAxis_1" xlink:title="cwco_TypeOfPhasesAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesDomain" xlink:label="cwco_TypeOfPhasesDomain_1" xlink:title="cwco_TypeOfPhasesDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_TypeOfPhasesAxis_1" xlink:to="cwco_TypeOfPhasesDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_TypeOfPhasesAxis_1 To cwco_TypeOfPhasesDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_1" xlink:title="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain_1" xlink:title="srt_EquityMethodInvesteeNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_1" xlink:to="srt_EquityMethodInvesteeNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_1 To srt_EquityMethodInvesteeNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeAxis" xlink:label="us-gaap_SubsequentEventTypeAxis_1" xlink:title="us-gaap_SubsequentEventTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventTypeDomain" xlink:label="us-gaap_SubsequentEventTypeDomain_1" xlink:title="us-gaap_SubsequentEventTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_SubsequentEventTypeAxis_1" xlink:to="us-gaap_SubsequentEventTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_SubsequentEventTypeAxis_1 To us-gaap_SubsequentEventTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_1" xlink:title="us-gaap_DisposalGroupClassificationAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_1" xlink:title="us-gaap_DisposalGroupClassificationDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_DisposalGroupClassificationAxis_1" xlink:to="us-gaap_DisposalGroupClassificationDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_DisposalGroupClassificationAxis_1 To us-gaap_DisposalGroupClassificationDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_1" xlink:title="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_1" xlink:title="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_1" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_1 To us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAxis" xlink:label="cwco_ContractWithCustomerAxis_1" xlink:title="cwco_ContractWithCustomerAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerDomain" xlink:label="cwco_ContractWithCustomerDomain_1" xlink:title="cwco_ContractWithCustomerDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_ContractWithCustomerAxis_1" xlink:to="cwco_ContractWithCustomerDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_ContractWithCustomerAxis_1 To cwco_ContractWithCustomerDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis_1" xlink:title="us-gaap_BalanceSheetLocationAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain_1" xlink:title="us-gaap_BalanceSheetLocationDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_BalanceSheetLocationAxis_1" xlink:to="us-gaap_BalanceSheetLocationDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_BalanceSheetLocationAxis_1 To us-gaap_BalanceSheetLocationDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="us-gaap_FairValueByAssetClassAxis_1" xlink:title="us-gaap_FairValueByAssetClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_1" xlink:title="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FairValueByAssetClassAxis_1" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FairValueByAssetClassAxis_1 To us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" xlink:title="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" xlink:title="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis_1" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FairValueByFairValueHierarchyLevelAxis_1 To us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByLiabilityClassAxis" xlink:label="us-gaap_FairValueByLiabilityClassAxis_1" xlink:title="us-gaap_FairValueByLiabilityClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_1" xlink:title="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FairValueByLiabilityClassAxis_1" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FairValueByLiabilityClassAxis_1 To us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PublicUtilityAxis" xlink:label="us-gaap_PublicUtilityAxis_1" xlink:title="us-gaap_PublicUtilityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UtilityPlantDomain" xlink:label="us-gaap_UtilityPlantDomain_1" xlink:title="us-gaap_UtilityPlantDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_PublicUtilityAxis_1" xlink:to="us-gaap_UtilityPlantDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_PublicUtilityAxis_1 To us-gaap_UtilityPlantDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis_1" xlink:title="srt_MajorCustomersAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_1" xlink:title="srt_NameOfMajorCustomerDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_MajorCustomersAxis_1" xlink:to="srt_NameOfMajorCustomerDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_MajorCustomersAxis_1 To srt_NameOfMajorCustomerDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:title="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" xlink:title="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_1 To us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1" xlink:title="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain_1" xlink:title="us-gaap_RelatedPartyDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1" xlink:to="us-gaap_RelatedPartyDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_1 To us-gaap_RelatedPartyDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:title="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" xlink:title="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_1 To us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="us-gaap_FinancialInstrumentAxis_1" xlink:title="us-gaap_FinancialInstrumentAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" xlink:title="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_FinancialInstrumentAxis_1" xlink:to="us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_FinancialInstrumentAxis_1 To us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis_1" xlink:title="us-gaap_OptionIndexedToIssuersEquityTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain_1" xlink:title="us-gaap_OptionIndexedToIssuersEquityTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis_1" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_OptionIndexedToIssuersEquityTypeAxis_1 To us-gaap_OptionIndexedToIssuersEquityTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" xlink:title="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" xlink:title="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_1 To us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis_1" xlink:title="srt_TitleOfIndividualAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" xlink:title="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_TitleOfIndividualAxis_1" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_TitleOfIndividualAxis_1 To srt_TitleOfIndividualWithRelationshipToEntityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis_1" xlink:title="us-gaap_AwardTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AwardTypeAxis_1" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AwardTypeAxis_1 To us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanAxis" xlink:label="cwco_RetirementPlanAxis_1" xlink:title="cwco_RetirementPlanAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanDomain" xlink:label="cwco_RetirementPlanDomain_1" xlink:title="cwco_RetirementPlanDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_RetirementPlanAxis_1" xlink:to="cwco_RetirementPlanDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_RetirementPlanAxis_1 To cwco_RetirementPlanDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_1" xlink:title="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_1" xlink:title="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_1" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_1 To cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis_1" xlink:title="us-gaap_CreditFacilityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_1" xlink:title="us-gaap_CreditFacilityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_CreditFacilityAxis_1" xlink:to="us-gaap_CreditFacilityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_CreditFacilityAxis_1 To us-gaap_CreditFacilityDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis" xlink:label="us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_1" xlink:title="us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivableTypeDomain" xlink:label="us-gaap_ReceivableTypeDomain_1" xlink:title="us-gaap_ReceivableTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_1" xlink:to="us-gaap_ReceivableTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis_1 To us-gaap_ReceivableTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis" xlink:label="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_1" xlink:title="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain" xlink:label="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_1" xlink:title="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_1" xlink:to="us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeAxis_1 To us-gaap_EquityMethodInvestmentNonconsolidatedInvesteeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AgreementAxis" xlink:label="cwco_AgreementAxis_1" xlink:title="cwco_AgreementAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AgreementDomain" xlink:label="cwco_AgreementDomain_1" xlink:title="cwco_AgreementDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_AgreementAxis_1" xlink:to="cwco_AgreementDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_AgreementAxis_1 To cwco_AgreementDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis_1" xlink:title="srt_ProductOrServiceAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_1" xlink:title="srt_ProductsAndServicesDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="srt_ProductOrServiceAxis_1" xlink:to="srt_ProductsAndServicesDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:srt_ProductOrServiceAxis_1 To srt_ProductsAndServicesDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAxis" xlink:label="cwco_PlantAxis_1" xlink:title="cwco_PlantAxis_1" />
    <link:loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantDomain" xlink:label="cwco_PlantDomain_1" xlink:title="cwco_PlantDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="cwco_PlantAxis_1" xlink:to="cwco_PlantDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:cwco_PlantAxis_1 To cwco_PlantDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtTypeAxis" xlink:label="us-gaap_ShortTermDebtTypeAxis_1" xlink:title="us-gaap_ShortTermDebtTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermDebtTypeDomain" xlink:label="us-gaap_ShortTermDebtTypeDomain_1" xlink:title="us-gaap_ShortTermDebtTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_ShortTermDebtTypeAxis_1" xlink:to="us-gaap_ShortTermDebtTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_ShortTermDebtTypeAxis_1 To us-gaap_ShortTermDebtTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:label="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" xlink:title="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LossContingencyNatureDomain" xlink:label="us-gaap_LossContingencyNatureDomain_1" xlink:title="us-gaap_LossContingencyNatureDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_LossContingenciesByNatureOfContingencyAxis_1" xlink:to="us-gaap_LossContingencyNatureDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_LossContingenciesByNatureOfContingencyAxis_1 To us-gaap_LossContingencyNatureDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" xlink:title="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember_1" xlink:title="us-gaap_TypeOfAdoptionMember_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1" xlink:to="us-gaap_TypeOfAdoptionMember_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_1 To us-gaap_TypeOfAdoptionMember_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityInterestIssuedOrIssuableByTypeAxis" xlink:label="us-gaap_EquityInterestIssuedOrIssuableByTypeAxis_1" xlink:title="us-gaap_EquityInterestIssuedOrIssuableByTypeAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityInterestIssuedOrIssuableTypeDomain" xlink:label="us-gaap_EquityInterestIssuedOrIssuableTypeDomain_1" xlink:title="us-gaap_EquityInterestIssuedOrIssuableTypeDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_EquityInterestIssuedOrIssuableByTypeAxis_1" xlink:to="us-gaap_EquityInterestIssuedOrIssuableTypeDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_EquityInterestIssuedOrIssuableByTypeAxis_1 To us-gaap_EquityInterestIssuedOrIssuableTypeDomain_1" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis_1" xlink:title="us-gaap_IncomeTaxAuthorityAxis_1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain_1" xlink:title="us-gaap_IncomeTaxAuthorityDomain_1" />
    <link:definitionArc xlink:type="arc" xlink:from="us-gaap_IncomeTaxAuthorityAxis_1" xlink:to="us-gaap_IncomeTaxAuthorityDomain_1" use="optional" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:title="definition:us-gaap_IncomeTaxAuthorityAxis_1 To us-gaap_IncomeTaxAuthorityDomain_1" order="1" />
  </link:definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" xlink:type="extended" xlink:title="00100 - Statement - CONSOLIDATED BALANCE SHEETS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassAMember" xlink:label="us-gaap_CommonClassAMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_CommonClassAMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_CommonClassBMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositAtCarryingValue" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CertificatesOfDepositAtCarryingValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_AssetsAbstract" xlink:to="cwco_ConstructionInProgress" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_InventoryNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_EquityMethodInvestments" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Goodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Assets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DividendsPayableCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeCurrent" xlink:label="us-gaap_DeferredIncomeCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermDebtNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="16" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapital" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_MinorityInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" xlink:type="extended" xlink:title="00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassAMember" xlink:label="us-gaap_CommonClassAMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_CommonClassAMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_CommonClassBMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesIssued" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesOutstanding" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" xlink:type="extended" xlink:title="00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementLocationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_CostOfSalesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" xlink:type="extended" xlink:title="00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RedeemablePreferredStockMember" xlink:label="us-gaap_RedeemablePreferredStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_RedeemablePreferredStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_PreferredStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_NoncontrollingInterestMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodValue" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodShares" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodShares" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodShares" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProfitLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCash" xlink:label="us-gaap_DividendsCash" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DividendsCash" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercNonControllingInterestAtAcquisitionDate" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_PercNonControllingInterestAtAcquisitionDate" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" xlink:type="extended" xlink:title="00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="dei_EntityDomain" xlink:to="cwco_AerexIndustriesIncMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="dei_EntityDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProfitLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortizationDiscontinuedOperations" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationAndAmortizationDiscontinuedOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationAndAmortization" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForLoanAndLeaseLosses" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForLoanAndLeaseLosses" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnDispositionOfAssets1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GoodwillImpairmentLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInDeferredRevenue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToAcquireCertificatesOfDeposit" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="cwco_PaymentsToAcquireCertificatesOfDeposit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="us-gaap_PaymentsToMinorityShareholders" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsToMinorityShareholders" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromStockOptionsExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesDetails" xlink:type="extended" xlink:title="40201 - Disclosure - Accounting policies (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_CertificatesOfDepositMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashEquivalentsAtCarryingValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepositsHeldInForeignBank" xlink:label="cwco_DepositsHeldInForeignBank" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_DepositsHeldInForeignBank" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" xlink:type="extended" xlink:title="40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CashAndCashEquivalentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_CertificatesOfDepositMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="us-gaap_CashEquivalentsAtCarryingValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashUninsuredAmount" xlink:label="us-gaap_CashUninsuredAmount" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="us-gaap_CashUninsuredAmount" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" xlink:label="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepositsHeldInForeignBank" xlink:label="cwco_DepositsHeldInForeignBank" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="cwco_DepositsHeldInForeignBank" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" xlink:type="extended" xlink:title="40203 - Disclosure - Accounting policies - Disaggregated revenue (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetailRevenuesMember" xlink:label="cwco_RetailRevenuesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_RetailRevenuesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkRevenuesMember" xlink:label="cwco_BulkRevenuesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkRevenuesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesRevenuesMember" xlink:label="cwco_ServicesRevenuesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ServicesRevenuesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingRevenuesMember" xlink:label="cwco_ManufacturingRevenuesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ManufacturingRevenuesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_BS" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="srt_ConsolidatedEntitiesAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_StatementTable" xlink:to="srt_ConsolidatedEntitiesAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="srt_ConsolidatedEntitiesDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_ConsolidatedEntitiesAxis" xlink:to="srt_ConsolidatedEntitiesDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsolidatedWaterBahamasMember" xlink:label="cwco_ConsolidatedWaterBahamasMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_ConsolidatedEntitiesDomain" xlink:to="cwco_ConsolidatedWaterBahamasMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Revenues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfBadDebts" xlink:label="cwco_PercentageOfBadDebts" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_PercentageOfBadDebts" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" xlink:type="extended" xlink:title="40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_AerexIndustriesIncMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodAxis" xlink:label="cwco_FairValueDeterminingMethodAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="cwco_FairValueDeterminingMethodAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodDomain" xlink:label="cwco_FairValueDeterminingMethodDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="cwco_FairValueDeterminingMethodAxis" xlink:to="cwco_FairValueDeterminingMethodDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscountedCashFlowMethodMember" xlink:label="cwco_DiscountedCashFlowMethodMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_FairValueDeterminingMethodDomain" xlink:to="cwco_DiscountedCashFlowMethodMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuidelinePublicCompanyMethodMember" xlink:label="cwco_GuidelinePublicCompanyMethodMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_FairValueDeterminingMethodDomain" xlink:to="cwco_GuidelinePublicCompanyMethodMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_SegmentRetailMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ServicesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ManufacturingUnitsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GrossProfitMember" xlink:label="cwco_GrossProfitMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_GrossProfitMember" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="5" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValuePercentageSegmentReportingInformation" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_EstimatedFairValuePercentageSegmentReportingInformation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValueCarryingAmountExceededPercentage" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_EstimatedFairValueCarryingAmountExceededPercentage" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Goodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GoodwillImpairmentLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfCustomers" xlink:label="cwco_NumberOfCustomers" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_NumberOfCustomers" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" xlink:type="extended" xlink:title="40205 - Disclosure - Accounting policies - Investments and Other assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CriteriaForRecognizingInvestmentAtCost" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_CriteriaForRecognizingInvestmentAtCost" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentAdditionalInformation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssets" xlink:label="us-gaap_OtherAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAmortizationOfDeferredCharges" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAmortizationOfDeferredCharges" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" xlink:type="extended" xlink:title="40206 - Disclosure - Accounting policies - Property, plant and equipment (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAndEquipmentMember" xlink:label="cwco_PlantAndEquipmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_PlantAndEquipmentMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DistributionSystemsMember" xlink:label="cwco_DistributionSystemsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_DistributionSystemsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_VehiclesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LeaseholdImprovementsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LabEquipmentMember" xlink:label="cwco_LabEquipmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_LabEquipmentMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" xlink:label="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" xlink:type="extended" xlink:title="40207 - Disclosure - Accounting policies - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_SegmentRetailMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ServicesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ManufacturingUnitsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkRevenuesMember" xlink:label="cwco_BulkRevenuesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkRevenuesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BusinessAcquisitionAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_AerexIndustriesIncMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_BS" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="5" xlink:from="us-gaap_StatementTable" xlink:to="srt_OwnershipAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" use="optional" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_OwnershipDomain" xlink:to="cwco_AerexIndustriesIncMember" use="optional" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_OwnershipDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestCostsCapitalized" xlink:label="us-gaap_InterestCostsCapitalized" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:to="us-gaap_InterestCostsCapitalized" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CriteriaForRecognizingInvestmentAtCost" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_CriteriaForRecognizingInvestmentAtCost" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EquityMethodInvestmentAdditionalInformation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssets" xlink:label="us-gaap_OtherAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAmortizationOfDeferredCharges" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherAmortizationOfDeferredCharges" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_StatementLineItems" xlink:to="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfBadDebts" xlink:label="cwco_PercentageOfBadDebts" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_PercentageOfBadDebts" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_Revenues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" xlink:type="extended" xlink:title="40301 - Disclosure - Cash and cash equivalents (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_CurrencyAxis" xlink:label="srt_CurrencyAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:to="srt_CurrencyAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_AllCurrenciesDomain" xlink:label="currency_AllCurrenciesDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_CurrencyAxis" xlink:to="currency_AllCurrenciesDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_USD" xlink:label="currency_USD" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="currency_AllCurrenciesDomain" xlink:to="currency_USD" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_KYD" xlink:label="currency_KYD" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="currency_AllCurrenciesDomain" xlink:to="currency_KYD" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BSD" xlink:label="currency_BSD" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="currency_AllCurrenciesDomain" xlink:to="currency_BSD" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BMD" xlink:label="currency_BMD" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="currency_AllCurrenciesDomain" xlink:to="currency_BMD" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="us-gaap_Cash" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_Cash" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_CashEquivalentsAtCarryingValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureInventoryDetails" xlink:type="extended" xlink:title="40501 - Disclosure - Inventory (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_InventoryCurrentTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterStockMember" xlink:label="cwco_WaterStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="cwco_WaterStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsumablesStockMember" xlink:label="cwco_ConsumablesStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="cwco_ConsumablesStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SparePartsStockMember" xlink:label="cwco_SparePartsStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="cwco_SparePartsStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_InventoryLineItems" xlink:to="us-gaap_InventoryCurrentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_InventoryLineItems" xlink:to="us-gaap_InventoryGross" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_InventoryLineItems" xlink:to="us-gaap_InventoryNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_InventoryLineItems" xlink:to="us-gaap_InventoryNoncurrent" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgressDetails" xlink:type="extended" xlink:title="40601 - Disclosure - Contracts in progress (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAmountBilled" xlink:label="cwco_ContractWithCustomerAmountBilled" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerAmountBilled" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerRetainage" xlink:label="cwco_ContractWithCustomerRetainage" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerRetainage" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerNetOverbillings" xlink:label="cwco_ContractWithCustomerNetOverbillings" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerNetOverbillings" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BalanceSheetLocationAbstract" xlink:label="cwco_BalanceSheetLocationAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_BalanceSheetLocationAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_BalanceSheetLocationAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_BalanceSheetLocationAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgressDefaultDetails" xlink:type="extended" xlink:title="40601 - Disclosure - Contracts in progress Default (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAmountBilled" xlink:label="cwco_ContractWithCustomerAmountBilled" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerAmountBilled" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerRetainage" xlink:label="cwco_ContractWithCustomerRetainage" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerRetainage" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerNetOverbillings" xlink:label="cwco_ContractWithCustomerNetOverbillings" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerNetOverbillings" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BalanceSheetLocationAbstract" xlink:label="cwco_BalanceSheetLocationAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_BalanceSheetLocationAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_BalanceSheetLocationAbstract" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_BalanceSheetLocationAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" xlink:type="extended" xlink:title="40701 - Disclosure - Property, plant and equipment and construction in progress (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LandMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_BuildingMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAndEquipmentMember" xlink:label="cwco_PlantAndEquipmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_PlantAndEquipmentMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DistributionSystemsMember" xlink:label="cwco_DistributionSystemsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_DistributionSystemsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_FurnitureAndFixturesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_VehiclesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_LeaseholdImprovementsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LabEquipmentMember" xlink:label="cwco_LabEquipmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="cwco_LabEquipmentMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_ConstructionInProgressGross" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" xlink:type="extended" xlink:title="40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsTable" xlink:label="us-gaap_ScheduleOfInvestmentsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="srt_OwnershipAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NSCAguaMember" xlink:label="cwco_NSCAguaMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_OwnershipDomain" xlink:to="cwco_NSCAguaMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementMember" xlink:label="cwco_OptionAgreementMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="cwco_OptionAgreementMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesAxis" xlink:label="cwco_TypeOfPhasesAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="cwco_TypeOfPhasesAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesDomain" xlink:label="cwco_TypeOfPhasesDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="cwco_TypeOfPhasesAxis" xlink:to="cwco_TypeOfPhasesDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FirstPhaseMember" xlink:label="cwco_FirstPhaseMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_TypeOfPhasesDomain" xlink:to="cwco_FirstPhaseMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SecondPhaseMember" xlink:label="cwco_SecondPhaseMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_TypeOfPhasesDomain" xlink:to="cwco_SecondPhaseMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_EquityMethodInvesteeNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AguasDeRosaritoSapiDeCvMember" xlink:label="cwco_AguasDeRosaritoSapiDeCvMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_EquityMethodInvesteeNameDomain" xlink:to="cwco_AguasDeRosaritoSapiDeCvMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="5" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="6" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="7" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="cwco_MexicoProjectDevelopmentMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsLineItems" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_ScheduleOfInvestmentsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalVotingInterestPercentageAfterConversionOfLoan" xlink:label="cwco_TotalVotingInterestPercentageAfterConversionOfLoan" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_TotalVotingInterestPercentageAfterConversionOfLoan" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" xlink:label="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" xlink:label="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_AreaOfLand" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodInWhichConstructionMustBeCompleted" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PeriodInWhichConstructionMustBeCompleted" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" xlink:label="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentForLandAndRightOfWayHeldForDevelopment" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PaymentForLandAndRightOfWayHeldForDevelopment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscontinuedOperationsNonRecoverableExpenses" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_DiscontinuedOperationsNonRecoverableExpenses" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_LossContingencyDamagesSoughtValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_LitigationSettlementExpense" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="16" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToEnterOptionAgreement" xlink:label="cwco_PaymentsToEnterOptionAgreement" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="17" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PaymentsToEnterOptionAgreement" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsForOptionExercised" xlink:label="cwco_PaymentsForOptionExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="18" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PaymentsForOptionExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" xlink:label="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="19" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RepaymentOfInterCompanyLoanPayable" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="20" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_RepaymentOfInterCompanyLoanPayable" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="21" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_SharePrice" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementExpirationDate" xlink:label="cwco_OptionAgreementExpirationDate" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="22" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_OptionAgreementExpirationDate" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuaranteeFee" xlink:label="cwco_GuaranteeFee" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="23" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="cwco_GuaranteeFee" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" xlink:type="extended" xlink:title="40802 - Disclosure - Discontinued operations - Mexico project development (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="cwco_MexicoProjectDevelopmentMember" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ValueAddedTaxReceivableAllowance" xlink:label="cwco_ValueAddedTaxReceivableAllowance" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="cwco_ValueAddedTaxReceivableAllowance" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails" xlink:type="extended" xlink:title="40803 - Disclosure - Discontinued operations - Financial Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="cwco_MexicoProjectDevelopmentMember" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromDiscontinuedOperations" xlink:label="cwco_IncomeLossFromDiscontinuedOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="cwco_IncomeLossFromDiscontinuedOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" xlink:type="extended" xlink:title="40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TradeNameMember" xlink:label="cwco_TradeNameMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="cwco_TradeNameMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CustomerBacklogMember" xlink:label="cwco_CustomerBacklogMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="cwco_CustomerBacklogMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementContractsMember" xlink:label="cwco_ManagementContractsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="cwco_ManagementContractsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:to="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentForAmortizationAbstract" xlink:label="us-gaap_AdjustmentForAmortizationAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:to="us-gaap_AdjustmentForAmortizationAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AdjustmentForAmortizationAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AdjustmentForAmortizationAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" xlink:type="extended" xlink:title="40903 - Disclosure - Intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_TradeNamesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_BusinessAcquisitionAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_AerexIndustriesIncMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_NoncompeteAgreementsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_CustomerRelationshipsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="4" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" xlink:type="extended" xlink:title="41001 - Disclosure - Leases - Lease assets and liabilities (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseAssetsCurrent" xlink:label="cwco_OperatingLeaseAssetsCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="cwco_OperatingLeaseAssetsCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="us-gaap_AssetsNoncurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsNoncurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_AssetsNoncurrentAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_AssetsNoncurrentAbstract" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseRightOfUseAssetNet" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_AssetsAbstract" xlink:to="cwco_OperatingLeaseRightOfUseAssetNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="us-gaap_LiabilitiesAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" xlink:type="extended" xlink:title="41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNetAbstract" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxAssetsNetAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsLandBasisDifference" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="cwco_DeferredTaxAssetsLandBasisDifference" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsStartupCosts" xlink:label="cwco_DeferredTaxAssetsStartupCosts" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="cwco_DeferredTaxAssetsStartupCosts" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesNetAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DeferredTaxLiabilitiesNetAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilities" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:to="us-gaap_DeferredTaxLiabilities" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" xlink:type="extended" xlink:title="41105 - Disclosure - Income taxes - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_IncomeTaxAuthorityAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_DomesticCountryMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_StateAndLocalJurisdictionMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_DisposalGroupClassificationAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLossCarryforwards" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationDetails" xlink:type="extended" xlink:title="41401 - Disclosure - Segment information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_SegmentRetailMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ServicesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ManufacturingUnitsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_NumberOfReportableSegments" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Revenues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_CostOfRevenue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_GrossProfit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_GeneralAndAdministrativeExpense" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_OperatingIncomeLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_NonoperatingIncomeExpense" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeLossFromContinuingOperations" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="16" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_NetIncomeLoss" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="17" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_AccountsReceivableNetCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InventoryCurrentAndNoncurrent" xlink:label="cwco_InventoryCurrentAndNoncurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="18" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="cwco_InventoryCurrentAndNoncurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="19" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="20" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="cwco_ConstructionInProgress" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="21" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="22" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Goodwill" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AssetsContinuedOperation" xlink:label="cwco_AssetsContinuedOperation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="23" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="cwco_AssetsContinuedOperation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="24" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="25" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Assets" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" xlink:type="extended" xlink:title="41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_StatementGeographicalAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_KY" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_BS" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_VG" xlink:label="country_VG" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_VG" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterAndSewerageCorporationMember" xlink:label="cwco_WaterAndSewerageCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="srt_SegmentGeographicalDomain" xlink:to="cwco_WaterAndSewerageCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OneCustomerMember" xlink:label="cwco_OneCustomerMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="srt_SegmentGeographicalDomain" xlink:to="cwco_OneCustomerMember" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_Revenues" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EntityWideRevenuesMajorCustomerPercentage" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="cwco_EntityWideRevenuesMajorCustomerPercentage" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" xlink:type="extended" xlink:title="41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="srt_StatementGeographicalAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_KY" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_BS" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:type="extended" xlink:title="41404 - Disclosure - Segment information - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_StatementBusinessSegmentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_SegmentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_SegmentRetailMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_BulkMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ServicesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_SegmentDomain" xlink:to="cwco_ManufacturingUnitsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_DepreciationDepletionAndAmortization" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" xlink:type="extended" xlink:title="41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ElectricityMember" xlink:label="us-gaap_ElectricityMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ElectricityMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepreciationMember" xlink:label="cwco_DepreciationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_DepreciationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FuelOilMember" xlink:label="cwco_FuelOilMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_FuelOilMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeeCostsMember" xlink:label="cwco_EmployeeCostsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_EmployeeCostsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="us-gaap_MaintenanceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_MaintenanceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RoyaltiesMember" xlink:label="cwco_RoyaltiesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_RoyaltiesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InsuranceMember" xlink:label="cwco_InsuranceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_InsuranceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MaterialsMember" xlink:label="cwco_MaterialsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_MaterialsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherExpenseMember" xlink:label="us-gaap_OtherExpenseMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_OtherExpenseMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:to="us-gaap_CostOfRevenue" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" xlink:type="extended" xlink:title="41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeeCostsMember" xlink:label="cwco_EmployeeCostsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_EmployeeCostsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InsuranceMember" xlink:label="cwco_InsuranceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_InsuranceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfessionalsFeeMember" xlink:label="cwco_ProfessionalsFeeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_ProfessionalsFeeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DirectorsFeesAndExpensesMember" xlink:label="cwco_DirectorsFeesAndExpensesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_DirectorsFeesAndExpensesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepreciationMember" xlink:label="cwco_DepreciationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_DepreciationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmortizationOfIntangiblesMember" xlink:label="cwco_AmortizationOfIntangiblesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_AmortizationOfIntangiblesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OtherCreditDeviceMember" xlink:label="cwco_OtherCreditDeviceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="cwco_OtherCreditDeviceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:to="us-gaap_GeneralAndAdministrativeExpense" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" xlink:type="extended" xlink:title="41602 - Disclosure - Stock-based compensation - Stock option activity (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:to="us-gaap_EmployeeStockOptionMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" xlink:type="extended" xlink:title="41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BelowMarketPriceMember" xlink:label="cwco_BelowMarketPriceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="cwco_BelowMarketPriceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AtMarketPriceMember" xlink:label="cwco_AtMarketPriceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="cwco_AtMarketPriceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AboveMarketPriceMember" xlink:label="cwco_AboveMarketPriceMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="cwco_AboveMarketPriceMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="srt_TitleOfIndividualAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementEmployeesMember" xlink:label="cwco_ManagementEmployeesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="cwco_ManagementEmployeesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeesMember" xlink:label="cwco_EmployeesMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="cwco_EmployeesMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_StatementEquityComponentsAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_PreferredStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" xlink:type="extended" xlink:title="41604 - Disclosure - Stock-based compensation (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_StatementClassOfStockAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RedeemablePreferredStockMember" xlink:label="us-gaap_RedeemablePreferredStockMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_RedeemablePreferredStockMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:to="us-gaap_EmployeeStockOptionMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EquityIncentivePlan2008Member" xlink:label="cwco_EquityIncentivePlan2008Member" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:to="cwco_EquityIncentivePlan2008Member" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommonStockOptionsMember" xlink:label="cwco_CommonStockOptionsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="cwco_CommonStockOptionsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonExecutiveDirectorsSharePlanMember" xlink:label="cwco_NonExecutiveDirectorsSharePlanMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="cwco_NonExecutiveDirectorsSharePlanMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonperformancebasedGrantsMember" xlink:label="cwco_NonperformancebasedGrantsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="cwco_NonperformancebasedGrantsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PerformancebasedGrantsMember" xlink:label="cwco_PerformancebasedGrantsMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="cwco_PerformancebasedGrantsMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="9" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="10" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="11" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="12" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="13" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_PreferredStockValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="14" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioPreferredShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="15" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_StockholdersEquityNoteConversionRatioPreferredShares" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioCommonShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="16" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_StockholdersEquityNoteConversionRatioCommonShares" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="17" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="18" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="19" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="20" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="21" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensation" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ClosingPriceOfCommonShares" xlink:label="cwco_ClosingPriceOfCommonShares" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="22" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="cwco_ClosingPriceOfCommonShares" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" xlink:type="extended" xlink:title="41701 - Disclosure - Retirement benefits (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanAxis" xlink:label="cwco_RetirementPlanAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="cwco_RetirementPlanAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanDomain" xlink:label="cwco_RetirementPlanDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="cwco_RetirementPlanAxis" xlink:to="cwco_RetirementPlanDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_RetirementPlanDomain" xlink:to="country_KY" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_FL" xlink:label="stpr_FL" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_RetirementPlanDomain" xlink:to="stpr_FL" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_CA" xlink:label="stpr_CA" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="cwco_RetirementPlanDomain" xlink:to="stpr_CA" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="3" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionExpense" xlink:label="us-gaap_PensionExpense" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_PensionExpense" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails" xlink:type="extended" xlink:title="41801 - Disclosure - Financial instruments (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="us-gaap_FairValueByAssetClassAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByAssetClassAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FairValueByAssetClassAxis" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="us-gaap_CertificatesOfDepositMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="2" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel2Member" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueInputsLevel3Member" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" xlink:label="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" xlink:type="extended" xlink:title="41803 - Disclosure - Financial instruments - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="srt_RangeAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" xlink:type="extended" xlink:title="41901 - Disclosure - Commitments and contingencies (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesTable" xlink:label="cwco_CommitmentsAndContingenciesTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="cwco_CommitmentsAndContingenciesTable" xlink:to="srt_MajorCustomersAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WSCMember" xlink:label="cwco_WSCMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="cwco_WSCMember" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesLineItems" xlink:label="cwco_CommitmentsAndContingenciesLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="cwco_CommitmentsAndContingenciesTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmploymentAgreementBaseAnnualSalaries" xlink:label="cwco_EmploymentAgreementBaseAnnualSalaries" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="cwco_EmploymentAgreementBaseAnnualSalaries" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportingUnits" xlink:label="us-gaap_NumberOfReportingUnits" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_NumberOfReportingUnits" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfRevenue" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfRevenue" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfRevenue" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="5" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="6" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="7" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_AccountsReceivableNet" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="8" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" priority="1" use="optional" />
  </definitionLink>
  <definitionLink xlink:role="http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" xlink:type="extended" xlink:title="42001 - Disclosure - Related party transactions (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" order="1" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" order="1" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyDomain" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="1" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="cwco_PercWaterCorporationMember" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" order="1" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" use="optional" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="2" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="3" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent" priority="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" />
    <definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" order="4" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" priority="1" use="optional" />
  </definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>15
<FILENAME>cwco-20211231_lab.xml
<DESCRIPTION>EX-101.LAB
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--XBRL document created with Toppan Merrill Bridge  9.6.8042.36810 -->
<!--Based on XBRL 2.1-->
<!--Created on: 3/29/2022 8:51:23 PM-->
<!--Modified on: 3/29/2022 8:51:23 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
  <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" />
  <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" />
  <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:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DocumentAndEntityInformationAbstract" xlink:label="cwco_DocumentAndEntityInformationAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DocumentAndEntityInformationAbstract" xlink:to="cwco_DocumentAndEntityInformationAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DocumentAndEntityInformationAbstract_lbl" xml:lang="en-US">Document and Entity Information [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DocumentAndEntityInformationAbstract_lbl" xml:lang="en-US">Document and Entity Information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationTable_lbl" xml:lang="en-US">Document Information [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentInformationLineItems_lbl" xml:lang="en-US">Document Information [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_IcfrAuditorAttestationFlag" xlink:to="dei_IcfrAuditorAttestationFlag_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorName" xlink:to="dei_AuditorName_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorName_lbl" xml:lang="en-US">Auditor Name</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorFirmId" xlink:to="dei_AuditorFirmId_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditorLocation" xlink:to="dei_AuditorLocation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditorLocation_lbl" xml:lang="en-US">Auditor Location</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US">CONSOLIDATED BALANCE SHEETS</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_ClassOfStockDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ClassOfStockDomain_lbl" xml:lang="en-US">Class of Stock [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassAMember" xlink:label="us-gaap_CommonClassAMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonClassAMember" xlink:to="us-gaap_CommonClassAMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonClassAMember_lbl" xml:lang="en-US">Common Class A [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonClassBMember" xlink:to="us-gaap_CommonClassBMember_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">Assets [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AssetsAbstract_lbl" xml:lang="en-US">ASSETS</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Assets, Current [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Current assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US">Current</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash and cash equivalents at end of period</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositAtCarryingValue" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CertificatesOfDepositAtCarryingValue" xlink:to="us-gaap_CertificatesOfDepositAtCarryingValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue_lbl" xml:lang="en-US">Certificates of Deposit, at Carrying Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue_lbl" xml:lang="en-US">Certificate of deposit</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" />
    <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, Net, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Accounts receivable, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US">Accounts receivable, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventory, Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Less current portion</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InventoryNet_lbl" xml:lang="en-US">Inventory</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xml:lang="en-US">Prepaid Expense and Other Assets, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xml:lang="en-US">Prepaid expenses and other current assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xml:lang="en-US">Contract with Customer, Asset, Net, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xml:lang="en-US">Contract assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xml:lang="en-US">Contract assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xml:lang="en-US">Current assets of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_lbl" xml:lang="en-US">Assets, Current</label>
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, plant and equipment, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, Plant and Equipment, Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, Plant and Equipment, Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, Plant and Equipment, Net, Total</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Property, plant and equipment, net</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ConstructionInProgress" xlink:to="cwco_ConstructionInProgress_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ConstructionInProgress_lbl" xml:lang="en-US">Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ConstructionInProgress_lbl" xml:lang="en-US">Construction in Progress</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ConstructionInProgress_lbl" xml:lang="en-US">Construction in progress</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_ConstructionInProgress_lbl" xml:lang="en-US">Construction in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNoncurrent" xlink:to="us-gaap_InventoryNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNoncurrent_lbl" xml:lang="en-US">Inventory, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryNoncurrent_lbl" xml:lang="en-US">Inventory (non-current)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InventoryNoncurrent_lbl" xml:lang="en-US">Inventory, noncurrent</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestments" xlink:to="us-gaap_EquityMethodInvestments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestments_lbl" xml:lang="en-US">Equity Method Investments</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_EquityMethodInvestments_lbl" xml:lang="en-US">Investment in OC-BVI</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Goodwill_lbl" xml:lang="en-US">Goodwill</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" />
    <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, Net (Excluding Goodwill)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangibles, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangible assets, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US">Intangible assets, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Operating Lease, Right-of-Use Asset</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US">Operating lease right-of-use assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_lbl" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_lbl" xml:lang="en-US">Net asset arising from put/call options</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_lbl" xml:lang="en-US">Fair value, Assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US">Other Assets, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US">Other assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_lbl" xml:lang="en-US">Long-term assets of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Assets</label>
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Assets_lbl" xml:lang="en-US">Total assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">Liabilities and Equity [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US">LIABILITIES AND EQUITY</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Liabilities, Current [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Current liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US">Current</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Accounts Payable and Accrued Liabilities, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_lbl" xml:lang="en-US">Accounts payable, accrued expenses and other current liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_lbl" xml:lang="en-US">Accounts Payable, Related Parties, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_lbl" xml:lang="en-US">Accounts payable outstanding</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_lbl" xml:lang="en-US">Accounts payable - related parties</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_lbl" xml:lang="en-US">Accrued Employee Benefits, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_lbl" xml:lang="en-US">Accrued compensation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableCurrent" xlink:to="us-gaap_DividendsPayableCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xml:lang="en-US">Dividends Payable, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DividendsPayableCurrent_lbl" xml:lang="en-US">Dividends payable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Operating Lease, Liability, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Less: current obligations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Current maturities of operating leases</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US">Current maturities of operating leases</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Long-term Debt, Current Maturities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtCurrent_lbl" xml:lang="en-US">Current portion of long-term debt</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Contract with Customer, Liability, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Contract liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US">Contract liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeCurrent" xlink:label="us-gaap_DeferredIncomeCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeCurrent" xlink:to="us-gaap_DeferredIncomeCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeCurrent_lbl" xml:lang="en-US">Deferred Income, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredIncomeCurrent_lbl" xml:lang="en-US">Deferred revenue</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_lbl" xml:lang="en-US">Current liabilities of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US">Liabilities, Current</label>
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent_lbl" />
    <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, Excluding Current Maturities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongTermDebtNoncurrent_lbl" xml:lang="en-US">Long-term debt, noncurrent</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xml:lang="en-US">Deferred Tax Liabilities, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xml:lang="en-US">Deferred Tax Liabilities, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_lbl" xml:lang="en-US">Deferred tax liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Noncurrent lease obligations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Operating Lease, Liability, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US">Noncurrent operating leases</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_lbl" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_lbl" xml:lang="en-US">Net liability arising from put/call options</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_lbl" xml:lang="en-US">Net liability arising from put/call options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xml:lang="en-US">Other Liabilities, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xml:lang="en-US">Other liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_lbl" xml:lang="en-US">Long-term liabilities of discontinued operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_lbl" xml:lang="en-US">Noncurrent liabilities of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_lbl" xml:lang="en-US">Liabilities</label>
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitments and Contingencies</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US">Commitments and contingencies</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_lbl" xml:lang="en-US">Equity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US">Consolidated Water Co. Ltd. stockholders' equity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Preferred Stock, Value, Issued</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 28,635 and 31,068 shares, respectively</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockValue_lbl" xml:lang="en-US">Preferred stock value</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Common Stock, Value, Issued</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockValue_lbl" xml:lang="en-US">Common stock value</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xml:lang="en-US">Additional Paid in Capital</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AdditionalPaidInCapital_lbl" xml:lang="en-US">Additional paid-in capital</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US">Retained earnings</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Parent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquity_lbl" xml:lang="en-US">Total Consolidated Water Co. Ltd. stockholders' equity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterest" xlink:to="us-gaap_MinorityInterest_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterest_lbl" xml:lang="en-US">Stockholders' Equity Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_MinorityInterest_lbl" xml:lang="en-US">Non-controlling interests</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Balance</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Balance</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Total equity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US">Liabilities and Equity</label>
    <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 equity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" />
    <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 or Stated Value Per Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Redeemable preferred stock, par value (in dollars per share)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xml:lang="en-US">Redeemable preferred stock, authorized</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xml:lang="en-US">Redeemable preferred stock, issued</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xml:lang="en-US">Redeemable preferred stock, outstanding</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" />
    <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 or Stated Value Per Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US">Common stock, par value (in dollars per share)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US">Common stock, authorized</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US">Common stock, issued</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US">Common stock, outstanding</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US">CONSOLIDATED STATEMENTS OF INCOME</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Total Revenue</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Revenues</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Revenue</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Revenues_lbl" xml:lang="en-US">Revenue</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Cost of Revenue</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Cost of revenue (including purchases from related parties of $437,857 in 2021 and $1,349,331 in 2020)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CostOfRevenue_lbl" xml:lang="en-US">Cost of revenue</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross Profit</label>
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GrossProfit_lbl" xml:lang="en-US">Gross profit</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">General and Administrative Expense</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">General and administrative expenses</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US">General and administrative expenses (including purchases from related parties of $77.190 in 2021 and $0 in 2020)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:to="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_lbl" xml:lang="en-US">Gain (Loss) on Sale of Assets and Asset Impairment Charges</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_lbl" xml:lang="en-US">Gain (loss) on asset dispositions and impairments, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Operating Income (Loss)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US">Income from operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xml:lang="en-US">Nonoperating Income (Expense) [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xml:lang="en-US">Other income (expense):</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeOther" xlink:to="us-gaap_InterestIncomeOther_lbl" />
    <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, Other</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestIncomeOther_lbl" xml:lang="en-US">Interest income</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense_lbl" />
    <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</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_InterestExpense_lbl" xml:lang="en-US">Interest expense</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfitLossFromSubsidiaries" xlink:label="cwco_ProfitLossFromSubsidiaries" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ProfitLossFromSubsidiaries" xlink:to="cwco_ProfitLossFromSubsidiaries_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ProfitLossFromSubsidiaries_lbl" xml:lang="en-US">This item represents the entity's share of profit or (loss) from its unconsolidated equity method investee.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ProfitLossFromSubsidiaries_lbl" xml:lang="en-US">Profit Loss From Subsidiaries</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_ProfitLossFromSubsidiaries_lbl" xml:lang="en-US">Profit-sharing income from OC-BVI</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_lbl" xml:lang="en-US">Income (Loss) from Equity Method Investments</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_lbl" xml:lang="en-US">Equity in the earnings of OC-BVI</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UnrealizedGainLossOnDerivatives" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_lbl" xml:lang="en-US">Unrealized Gain (Loss) on Derivatives</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_lbl" xml:lang="en-US">Unrealized (gain) loss on net put/call option</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_lbl" xml:lang="en-US">Net unrealized gain (loss) on put/call options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xml:lang="en-US">Other Nonoperating Income (Expense)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xml:lang="en-US">Other</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Nonoperating Income (Expense)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Other income, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US">Other income, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US">Income before income taxes</label>
    <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 taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Income Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Benefit from income taxes</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Total provision</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Provision (benefit) for income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Net income from continuing operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:to="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_lbl" xml:lang="en-US">Income from continuing operations attributable to non-controlling interests</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperations" xlink:to="us-gaap_IncomeLossFromContinuingOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xml:lang="en-US">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperations_lbl" xml:lang="en-US">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" xml:lang="en-US">Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" xml:lang="en-US">Total loss from discontinued operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_lbl" xml:lang="en-US">Net loss from discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net Income (Loss) Attributable to Parent</label>
    <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 Consolidated Water Co. Ltd. stockholders</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US">Net income attributable to Consolidated Water Co. Ltd. stockholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xml:lang="en-US">Earnings Per Share, Basic [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xml:lang="en-US">Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Basic Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_lbl" xml:lang="en-US">Continuing operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_lbl" xml:lang="en-US">Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Basic Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_lbl" xml:lang="en-US">Discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Earnings Per Share, Basic</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US">Basic earnings per share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDilutedAbstract" xlink:label="us-gaap_EarningsPerShareDilutedAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDilutedAbstract" xlink:to="us-gaap_EarningsPerShareDilutedAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDilutedAbstract_lbl" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareDilutedAbstract_lbl" xml:lang="en-US">Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Diluted Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_lbl" xml:lang="en-US">Continuing operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_lbl" xml:lang="en-US">Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Diluted Share</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_lbl" xml:lang="en-US">Discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Earnings Per Share, Diluted</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US">Diluted earnings per share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockDividendsPerShareDeclared" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl" xml:lang="en-US">Common Stock, Dividends, Per Share, Declared</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_lbl" xml:lang="en-US">Dividends declared per common and redeemable preferred shares</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl" xml:lang="en-US">Weighted average number of common shares used in the determination of:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" />
    <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 Shares Outstanding, Basic</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders (in shares)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US">Basic earnings per share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" />
    <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 Shares Outstanding, Diluted</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US">Diluted earnings per share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl" xml:lang="en-US">Income Statement Location [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationDomain" xlink:to="us-gaap_IncomeStatementLocationDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementLocationDomain_lbl" xml:lang="en-US">Income Statement Location [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfSalesMember" xlink:to="us-gaap_CostOfSalesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostOfSalesMember_lbl" xml:lang="en-US">Cost of revenue.</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_lbl" xml:lang="en-US">General and administrative expense</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:to="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_lbl" xml:lang="en-US">Related Party Transaction, Purchases from Related Party</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_lbl" xml:lang="en-US">Purchases of services</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_lbl" xml:lang="en-US">Purchases from related parties</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xml:lang="en-US">CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RedeemablePreferredStockMember" xlink:label="us-gaap_RedeemablePreferredStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RedeemablePreferredStockMember" xlink:to="us-gaap_RedeemablePreferredStockMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RedeemablePreferredStockMember_lbl" xml:lang="en-US">Redeemable preferred stock [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityComponentDomain_lbl" xml:lang="en-US">Equity Component [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockMember" xlink:to="us-gaap_PreferredStockMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockMember_lbl" xml:lang="en-US">Preferred stock [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xml:lang="en-US">Additional paid-in capital [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncontrollingInterestMember" xlink:to="us-gaap_NoncontrollingInterestMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncontrollingInterestMember_lbl" xml:lang="en-US">Non controlling interests [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Shares, Outstanding</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balance (in shares)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesOutstanding_lbl" xml:lang="en-US">Balance (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US">Stock Issued During Period, Value, New Issues</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US">Issuance of share capital</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Stock Issued During Period, Shares, New Issues</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_lbl" xml:lang="en-US">Issuance of share capital (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:to="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_lbl" xml:lang="en-US">Stock Issued During Period, Value, Conversion of Convertible Securities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_lbl" xml:lang="en-US">Conversion of preferred stock</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:to="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_lbl" xml:lang="en-US">Stock Issued During Period, Shares, Conversion of Convertible Securities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_lbl" xml:lang="en-US">Conversion of preferred stock (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodValue" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRedeemedOrCalledDuringPeriodValue" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodValue_lbl" xml:lang="en-US">Stock Redeemed or Called During Period, Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodValue_lbl" xml:lang="en-US">Buyback of preferred stock</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodShares" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodShares" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRedeemedOrCalledDuringPeriodShares" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodShares_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodShares_lbl" xml:lang="en-US">Stock Redeemed or Called During Period, Shares</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodShares_lbl" xml:lang="en-US">Buyback of preferred stock (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/presentationGuidance" xlink:label="us-gaap_ProfitLoss_lbl" xml:lang="en-US">Net income</label>
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl" xml:lang="en-US">Exercise of options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Exercised - Options</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US">Exercise of options (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCash" xlink:label="us-gaap_DividendsCash" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsCash" xlink:to="us-gaap_DividendsCash_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsCash_lbl" xml:lang="en-US">Dividends, Cash</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DividendsCash_lbl" xml:lang="en-US">Dividends declared</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercNonControllingInterestAtAcquisitionDate" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PercNonControllingInterestAtAcquisitionDate" xlink:to="cwco_PercNonControllingInterestAtAcquisitionDate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate_lbl" xml:lang="en-US">Perc non controlling interest at acquisition date.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate_lbl" xml:lang="en-US">PERC Non Controlling Interest At Acquisition Date</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate_lbl" xml:lang="en-US">Acquisition of non-controlling interests</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xml:lang="en-US">Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xml:lang="en-US">Stock-based compensation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US">CONSOLIDATED STATEMENTS OF CASH FLOWS</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityDomain_lbl" xml:lang="en-US">Entity [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AerexIndustriesIncMember" xlink:to="cwco_AerexIndustriesIncMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AerexIndustriesIncMember_lbl" xml:lang="en-US">Represents information pertaining to Aerex Industries, Inc.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AerexIndustriesIncMember_lbl" xml:lang="en-US">Aerex</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PercWaterCorporationMember" xlink:to="cwco_PercWaterCorporationMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PercWaterCorporationMember_lbl" xml:lang="en-US">This member stands for PERC Water Corporation.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PercWaterCorporationMember_lbl" xml:lang="en-US">PERC Water Corporation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from operating activities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Net Income (Loss) Attributable to Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_lbl" xml:lang="en-US">Income from continuing operations attributable to non-controlling interests</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" />
    <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 (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities:</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_lbl" xml:lang="en-US">Amount of impairment attributable to disposal group, including, but not limited to, discontinued operation.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Other Expense, Impairment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_lbl" xml:lang="en-US">Impairment loss for Mexico assets - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortizationDiscontinuedOperations" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortizationDiscontinuedOperations" xlink:to="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_lbl" xml:lang="en-US">Depreciation and Amortization, Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_lbl" xml:lang="en-US">Depreciation and amortization of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Foreign Currency Translation Gains (Losses)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_lbl" xml:lang="en-US">Foreign currency transaction adjustment - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:to="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_lbl" xml:lang="en-US">Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_lbl" xml:lang="en-US">Loss from discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation, Depletion and Amortization, Nonproduction</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation and amortization</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred income tax benefit</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForLoanAndLeaseLosses" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForLoanAndLeaseLosses" xlink:to="us-gaap_ProvisionForLoanAndLeaseLosses_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses_lbl" xml:lang="en-US">Provision for Loan and Lease Losses</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses_lbl" xml:lang="en-US">Provision for doubtful accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Share-based Compensation</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US">Compensation expense relating to stock and stock option grants</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnDispositionOfAssets1" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Gain (Loss) on Disposition of Assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_lbl" xml:lang="en-US">Loss (gain) on asset dispositions and impairments, net</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" xlink:to="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_lbl" xml:lang="en-US">This items represents the entity's equity in earnings and profit sharing rights earned for the period from its unconsolidated equity method investee.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_lbl" xml:lang="en-US">Income Loss From Equity Method Investments And Subsidiaries</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_lbl" xml:lang="en-US">Profit-sharing and equity in earnings of OC-BVI</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions_lbl" xml:lang="en-US">Proceeds from Equity Method Investment, Distribution</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions_lbl" xml:lang="en-US">Distribution of earnings from OC-BVI</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillImpairmentLoss" xlink:to="us-gaap_GoodwillImpairmentLoss_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillImpairmentLoss_lbl" xml:lang="en-US">Goodwill, Impairment Loss</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GoodwillImpairmentLoss_lbl" xml:lang="en-US">Impairment of goodwill</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US">Change in:</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" xlink:to="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_lbl" xml:lang="en-US">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 and right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Receivable And Contract with Customer, Asset</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_lbl" xml:lang="en-US">Accounts receivable and contract assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Increase (Decrease) in Inventories</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US">Inventory</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xml:lang="en-US">Prepaid expenses and other assets</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" xlink:to="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_lbl" xml:lang="en-US">The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and in current liabilities classified as other and in obligation to transfer good or service to customer for which consideration has been received or is receivable.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_lbl" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Other Current Liabilities and Contract with Customer, Liability</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_lbl" xml:lang="en-US">Accounts payable(including related parties), accrued expenses and other current liabilities, and contract liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities_lbl" xml:lang="en-US">Increase (Decrease) in Operating Liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities_lbl" xml:lang="en-US">Operating lease liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:to="us-gaap_IncreaseDecreaseInDeferredRevenue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue_lbl" xml:lang="en-US">Increase (Decrease) in Deferred Revenue</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue_lbl" xml:lang="en-US">Deferred revenue</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities, Continuing Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_lbl" xml:lang="en-US">Net cash provided by operating activities - continuing operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl" xml:lang="en-US">Cash Provided by (Used in) Operating Activities, Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_lbl" xml:lang="en-US">Net cash used in operating activities - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US">Net cash provided by operating activities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from investing activities</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToAcquireCertificatesOfDeposit" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PaymentsToAcquireCertificatesOfDeposit" xlink:to="cwco_PaymentsToAcquireCertificatesOfDeposit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit_lbl" xml:lang="en-US">The cash outflow from purchase of certificates of deposit.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit_lbl" xml:lang="en-US">Payments to Acquire Certificates of Deposit</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit_lbl" xml:lang="en-US">Purchase of certificate of deposit</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US">Additions to property, plant and equipment and construction in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Proceeds from Sale of Property, Plant, and Equipment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xml:lang="en-US">Proceeds from asset dispositions</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" xlink:to="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_lbl" xml:lang="en-US">Payments to Acquire Additional Interest in Subsidiaries</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_lbl" xml:lang="en-US">Purchase of non-controlling interest in PERC</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US">Net cash used in investing activities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US">Cash flows from financing activities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl" xml:lang="en-US">Payments of Ordinary Dividends, Common Stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl" xml:lang="en-US">Dividends paid to common shareholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" xlink:to="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_lbl" xml:lang="en-US">Payments of Ordinary Dividends, Preferred Stock and Preference Stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_lbl" xml:lang="en-US">Dividends paid to preferred shareholders</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="us-gaap_PaymentsToMinorityShareholders" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToMinorityShareholders" xlink:to="us-gaap_PaymentsToMinorityShareholders_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToMinorityShareholders_lbl" xml:lang="en-US">Payments to Noncontrolling Interests</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_PaymentsToMinorityShareholders_lbl" xml:lang="en-US">Dividends paid to non-controlling interests</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" xlink:to="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/definitionGuidance" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_lbl" xml:lang="en-US">Repurchase of redeemable preferred stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_lbl" xml:lang="en-US">Proceeds from (Repurchase of) Redeemable Preferred Stock</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xml:lang="en-US">Proceeds from Stock Options Exercised</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl" xml:lang="en-US">Proceeds received from exercise of stock options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xml:lang="en-US">Repayments of Long-term Debt</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfLongTermDebt_lbl" xml:lang="en-US">Principal repayments on long-term debt</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US">Net cash used in financing activities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_lbl" xml:lang="en-US">Net (decrease) increase in cash and cash equivalents</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash and cash equivalents at end of period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US">Cash and cash equivalents at beginning of period</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Less: cash and cash equivalents at end of period - discontinued operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_lbl" xml:lang="en-US">Cash and cash equivalents at beginning of period - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US">Noncash Investing and Financing Items [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US">Non-cash transactions:</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US">Non-cash transactions:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xml:lang="en-US">Right-of-use assets obtained in exchange for new operating lease liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" xlink:to="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_lbl" xml:lang="en-US">Debt Issuance Costs Incurred During Noncash or Partial Noncash Transaction</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_lbl" xml:lang="en-US">Purchase of equipment through issuance of long-term debt</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xml:lang="en-US">Principal activity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NatureOfOperations_lbl" xml:lang="en-US">Nature of Operations [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NatureOfOperations_lbl" xml:lang="en-US">Principal activity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" />
    <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 [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US">Accounting policies</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_lbl" xml:lang="en-US">Cash and cash equivalents</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl" xml:lang="en-US">Cash and Cash Equivalents Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_lbl" xml:lang="en-US">Cash and cash equivalents</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesAbstract" xlink:to="us-gaap_ReceivablesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReceivablesAbstract_lbl" xml:lang="en-US">Accounts receivable, net.</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl" xml:lang="en-US">Loans, Notes, Trade and Other Receivables Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_lbl" xml:lang="en-US">Accounts receivable, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xml:lang="en-US">Inventory</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">Inventory Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US">Inventory</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xml:lang="en-US">Contracts in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US">Contracts in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentAbstract_lbl" />
    <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 and construction in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" />
    <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 and Equipment Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl" xml:lang="en-US">Property, plant and equipment and construction in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:to="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_lbl" xml:lang="en-US">Discontinued operations.</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl" xml:lang="en-US">Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_lbl" xml:lang="en-US">Discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xml:lang="en-US">Intangible assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock_lbl" xml:lang="en-US">Intangible assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LeasesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeasesAbstract_lbl" xml:lang="en-US">Leases</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xml:lang="en-US">Lessee, Operating Leases [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xml:lang="en-US">Leases</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US">Income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US">Income Tax Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US">Income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">Earnings Per Share [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US">Earnings per share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsAbstract" xlink:label="us-gaap_DividendsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsAbstract" xlink:to="us-gaap_DividendsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsAbstract_lbl" xml:lang="en-US">Dividends.</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DividendsTextBlock" xlink:label="cwco_DividendsTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DividendsTextBlock" xlink:to="cwco_DividendsTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DividendsTextBlock_lbl" xml:lang="en-US">The entire disclosure for dividends.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DividendsTextBlock_lbl" xml:lang="en-US">Dividends [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DividendsTextBlock_lbl" xml:lang="en-US">Dividends</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingAbstract_lbl" xml:lang="en-US">Segment information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xml:lang="en-US">Segment information</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_lbl" xml:lang="en-US">Cost of revenues and general and administrative expenses</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_lbl" xml:lang="en-US">Tabular disclosure for cost of revenues and general and administrative expenses.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_lbl" xml:lang="en-US">Cost Of Revenues And General And Administrative Expenses [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_lbl" xml:lang="en-US">Cost of revenues and general and administrative expenses</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xml:lang="en-US">Stock-based compensation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">Share-based Payment Arrangement [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xml:lang="en-US">Stock-based compensation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="us-gaap_CompensationAndRetirementDisclosureAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract_lbl" xml:lang="en-US">Retirement benefits</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl" xml:lang="en-US">Pension and Other Postretirement Benefits Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_lbl" xml:lang="en-US">Retirement benefits</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:to="us-gaap_InvestmentsAllOtherInvestmentsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_lbl" xml:lang="en-US">Financial instruments</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:to="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl" xml:lang="en-US">Financial Instruments Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl" xml:lang="en-US">Financial instruments</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xml:lang="en-US">Commitments and contingencies</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xml:lang="en-US">Commitments and contingencies</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsAbstract_lbl" xml:lang="en-US">Related party transactions</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xml:lang="en-US">Related Party Transactions Disclosure [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_lbl" xml:lang="en-US">Related party transactions</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract" xlink:to="us-gaap_SupplementalCashFlowElementsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_lbl" xml:lang="en-US">Supplemental disclosure of cash flow information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:to="us-gaap_CashFlowSupplementalDisclosuresTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock_lbl" xml:lang="en-US">Cash Flow, Supplemental Disclosures [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock_lbl" xml:lang="en-US">Supplemental disclosure of cash flow information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_lbl" xml:lang="en-US">Impact of recent accounting standards</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xml:lang="en-US">New Accounting Pronouncements and Changes in Accounting Principles [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xml:lang="en-US">Impact of recent accounting standards</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="us-gaap_SubsequentEventsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl" />
    <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 [Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xml:lang="en-US">Subsequent events</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US">Basis of preparation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl" />
    <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, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_UseOfEstimates_lbl" xml:lang="en-US">Use of estimates</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConsolidationPolicyTextBlock" xlink:to="us-gaap_ConsolidationPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl" xml:lang="en-US">Consolidation, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ConsolidationPolicyTextBlock_lbl" xml:lang="en-US">Basis of consolidation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl" />
    <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 Transactions and Translations Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl" xml:lang="en-US">Foreign currency</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" />
    <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, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl" xml:lang="en-US">Cash and cash equivalents</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" xml:lang="en-US">Trade and Other Accounts Receivable, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl" xml:lang="en-US">Accounts receivable and allowance for doubtful accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xml:lang="en-US">Inventory, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl" xml:lang="en-US">Inventory</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_lbl" xml:lang="en-US">Contract assets and liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl" xml:lang="en-US">Property, plant and equipment, net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xml:lang="en-US">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl" xml:lang="en-US">Long-lived assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" />
    <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, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_lbl" xml:lang="en-US">Goodwill and intangible assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="us-gaap_InvestmentPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentPolicyTextBlock" xlink:to="us-gaap_InvestmentPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InvestmentPolicyTextBlock_lbl" xml:lang="en-US">Investment, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InvestmentPolicyTextBlock_lbl" xml:lang="en-US">Investments</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OtherAssetsPolicyTextBlock" xlink:label="cwco_OtherAssetsPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OtherAssetsPolicyTextBlock" xlink:to="cwco_OtherAssetsPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OtherAssetsPolicyTextBlock_lbl" xml:lang="en-US">Disclosure of accounting policy for other assets.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OtherAssetsPolicyTextBlock_lbl" xml:lang="en-US">Other Assets [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_OtherAssetsPolicyTextBlock_lbl" xml:lang="en-US">Other assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl" xml:lang="en-US">Income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock_lbl" xml:lang="en-US">Revenue Recognition, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock_lbl" xml:lang="en-US">Revenue recognition</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xml:lang="en-US">Reclassification, Policy [Policy Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xml:lang="en-US">Comparative amounts</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:label="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:to="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl" xml:lang="en-US">Disclosure of accounting policy for schedule of property plant and equipment useful life.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl" xml:lang="en-US">Schedule Of Property Plant And Equipment Useful Life [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl" xml:lang="en-US">Schedule of Estimated useful lives</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US">Schedule of Disaggregation of revenue</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock_lbl" xml:lang="en-US">Schedule of Cash and Cash Equivalents [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock_lbl" xml:lang="en-US">Schedule of Cash and cash equivalents</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_lbl" xml:lang="en-US">Schedule of Accounts receivable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:to="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_lbl" xml:lang="en-US">Allowance for Credit Losses on Financing Receivables [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_lbl" xml:lang="en-US">Schedule of Allowance for doubtful accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock_lbl" xml:lang="en-US">Schedule of Inventory, Noncurrent [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock_lbl" xml:lang="en-US">Schedule of Inventory</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_lbl" xml:lang="en-US">Tabular disclosure for revenue recognized and amounts billed with regard to contracts with customers in progress.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_lbl" xml:lang="en-US">Contract With Customer, In Progress, Revenue Recognized And Amounts Billed [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_lbl" xml:lang="en-US">Summary of information relative to revenue recognized and amounts billed on contracts in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl" xml:lang="en-US">Schedule of Property, plant and equipment and construction in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl" xml:lang="en-US">Schedule of financial information for Mexico project development</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" />
    <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 Finite-Lived Intangible Assets [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" />
    <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 Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_lbl" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" xlink:label="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" xlink:to="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Disclosure of accounting policy for lessee operating lease related assets and liabilities.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Lessee Operating Lease related Assets And Liabilities [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Schedule of lease-related assets and liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCostTableTextBlock" xlink:to="us-gaap_LeaseCostTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseCostTableTextBlock_lbl" xml:lang="en-US">Schedule of Lease, Cost [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LeaseCostTableTextBlock_lbl" xml:lang="en-US">Schedule of Lease, Cost</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:to="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_lbl" xml:lang="en-US">Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_lbl" xml:lang="en-US">Schedule of Cash Flow, Supplemental</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US">Schedule of future lease payments relating to the Company's operating lease liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:to="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_lbl" xml:lang="en-US">Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_lbl" xml:lang="en-US">Schedule of components of income before income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" />
    <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 Components of Income Tax Expense (Benefit) [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_lbl" xml:lang="en-US">Schedule of provision for income taxes deferred tax benefit relating to U.S. operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" />
    <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 Effective Income Tax Rate Reconciliation [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_lbl" xml:lang="en-US">Schedule of reconciliation of federal tax rate to the effective rate</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" />
    <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 and Liabilities [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_lbl" xml:lang="en-US">Schedule of tax effects of significant items net long-term deferred tax assets liability</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" />
    <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 Earnings Per Share, Basic and Diluted [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US">Schedule of computation of basic and diluted EPS</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsDeclaredTableTextBlock" xlink:label="us-gaap_DividendsDeclaredTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsDeclaredTableTextBlock" xlink:to="us-gaap_DividendsDeclaredTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsDeclaredTableTextBlock_lbl" xml:lang="en-US">Dividends Declared [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DividendsDeclaredTableTextBlock_lbl" xml:lang="en-US">Schedule of dividends</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_lbl" xml:lang="en-US">Schedule of segment reporting information, by segment</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:to="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" />
    <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 from external customers attributed to Foreign Countries by Geographic Area [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_lbl" xml:lang="en-US">Schedule of revenues earned by major geographic region</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:label="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:to="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock_lbl" xml:lang="en-US">Long-lived Assets by Geographic Areas [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock_lbl" xml:lang="en-US">Schedule of long-lived assets by geographic areas</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_lbl" xml:lang="en-US">Tabular disclosure for cost of revenues and general and administrative expenses.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_lbl" xml:lang="en-US">Cost Of Revenues And General And Administrative Expenses [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_lbl" xml:lang="en-US">Schedule of cost of revenues and general and administrative expenses</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" />
    <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 Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xml:lang="en-US">Schedule of significant weighted average assumptions</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">Share-based Compensation, Stock Options, Activity [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_lbl" xml:lang="en-US">Schedule of company's stock option activity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:to="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_lbl" xml:lang="en-US">Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_lbl" xml:lang="en-US">Schedule of weighted average fair value of options at the date of grant and the intrinsic value</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xml:lang="en-US">Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_lbl" xml:lang="en-US">Schedule of Fair value hierarchy for assets and liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_lbl" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_lbl" xml:lang="en-US">Schedule of Net liability arising from put/call options</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation" xlink:label="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation" xlink:to="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_lbl" xml:lang="en-US">The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_lbl" xml:lang="en-US">Schedule of Supplemental Disclosure of Cash Flow Information</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_lbl" xml:lang="en-US">Schedule of Supplemental disclosure of cash flow information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAxis" xlink:to="us-gaap_CashAndCashEquivalentsAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsAxis_lbl" xml:lang="en-US">Cash and Cash Equivalents [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_lbl" xml:lang="en-US">Cash and Cash Equivalents [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CertificatesOfDepositMember" xlink:to="us-gaap_CertificatesOfDepositMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CertificatesOfDepositMember_lbl" xml:lang="en-US">Certificate of deposit [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Cash Equivalents, at Carrying Value</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_lbl" xml:lang="en-US">Short term deposits</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepositsHeldInForeignBank" xlink:label="cwco_DepositsHeldInForeignBank" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DepositsHeldInForeignBank" xlink:to="cwco_DepositsHeldInForeignBank_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DepositsHeldInForeignBank_lbl" xml:lang="en-US">Amount of deposits held in foreign banks, as stated in equivalent United States dollars.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DepositsHeldInForeignBank_lbl" xml:lang="en-US">Deposits held in foreign bank</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_lbl" xml:lang="en-US">Foreign Currency Transaction Gain (Loss), before Tax [Abstract]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl" xml:lang="en-US">Foreign Currency Transaction Gain (Loss), before Tax</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_lbl" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashUninsuredAmount" xlink:label="us-gaap_CashUninsuredAmount" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashUninsuredAmount" xlink:to="us-gaap_CashUninsuredAmount_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashUninsuredAmount_lbl" xml:lang="en-US">Cash, Uninsured Amount</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" xlink:label="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" xlink:to="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank_lbl" xml:lang="en-US">Represents the amount cash held in foreign bank accounts including restricted cash.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank_lbl" xml:lang="en-US">Cash And Restricted Cash Equivalents Held In Foreign Bank</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDomain" xlink:to="us-gaap_SegmentDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentDomain_lbl" xml:lang="en-US">Segments [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetailRevenuesMember" xlink:label="cwco_RetailRevenuesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_RetailRevenuesMember" xlink:to="cwco_RetailRevenuesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_RetailRevenuesMember_lbl" xml:lang="en-US">Retail revenue [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkRevenuesMember" xlink:label="cwco_BulkRevenuesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_BulkRevenuesMember" xlink:to="cwco_BulkRevenuesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_BulkRevenuesMember_lbl" xml:lang="en-US">Bulk revenue [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesRevenuesMember" xlink:label="cwco_ServicesRevenuesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ServicesRevenuesMember" xlink:to="cwco_ServicesRevenuesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ServicesRevenuesMember_lbl" xml:lang="en-US">Services revenue [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingRevenuesMember" xlink:label="cwco_ManufacturingRevenuesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ManufacturingRevenuesMember" xlink:to="cwco_ManufacturingRevenuesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ManufacturingRevenuesMember_lbl" xml:lang="en-US">Manufacturing revenue [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeAxis_lbl" xml:lang="en-US">Range [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RangeMember_lbl" xml:lang="en-US">Range [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MinimumMember_lbl" xml:lang="en-US">Minimum [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MaximumMember_lbl" xml:lang="en-US">Maximum [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementGeographicalAxis_lbl" xml:lang="en-US">Geographical [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_SegmentGeographicalDomain_lbl" xml:lang="en-US">Geographical [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_BS" xlink:to="country_BS_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_BS_lbl" xml:lang="en-US">Bahamas [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="srt_ConsolidatedEntitiesAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidatedEntitiesAxis" xlink:to="srt_ConsolidatedEntitiesAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ConsolidatedEntitiesAxis_lbl" xml:lang="en-US">Consolidated Entities [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="srt_ConsolidatedEntitiesDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ConsolidatedEntitiesDomain" xlink:to="srt_ConsolidatedEntitiesDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ConsolidatedEntitiesDomain_lbl" xml:lang="en-US">Consolidated Entities [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsolidatedWaterBahamasMember" xlink:label="cwco_ConsolidatedWaterBahamasMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ConsolidatedWaterBahamasMember" xlink:to="cwco_ConsolidatedWaterBahamasMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ConsolidatedWaterBahamasMember_lbl" xml:lang="en-US">Consolidated Water Bahamas [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_lbl" xml:lang="en-US">The number of days after consumption billings are collected.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_lbl" xml:lang="en-US">Number Of Days After Consumption Billings Are Collected</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_lbl" xml:lang="en-US">Number of days after consumption billings are collected</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_lbl" xml:lang="en-US">The number of days after consumption billings are considered past due.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_lbl" xml:lang="en-US">Number Of Days After Consumption Billings Are Considered Past Due</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_lbl" xml:lang="en-US">Number of days after consumption billings are considered past due</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfBadDebts" xlink:label="cwco_PercentageOfBadDebts" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PercentageOfBadDebts" xlink:to="cwco_PercentageOfBadDebts_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PercentageOfBadDebts_lbl" xml:lang="en-US">The percentage representing the bad debts.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PercentageOfBadDebts_lbl" xml:lang="en-US">Percentage Of Bad Debts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl" xml:lang="en-US">Business Acquisition [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_lbl" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodAxis" xlink:label="cwco_FairValueDeterminingMethodAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_FairValueDeterminingMethodAxis" xlink:to="cwco_FairValueDeterminingMethodAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_FairValueDeterminingMethodAxis_lbl" xml:lang="en-US">Fair Value Determining Method [Axis]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodDomain" xlink:label="cwco_FairValueDeterminingMethodDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_FairValueDeterminingMethodDomain" xlink:to="cwco_FairValueDeterminingMethodDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_FairValueDeterminingMethodDomain_lbl" xml:lang="en-US">Fair Value Determining Method [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscountedCashFlowMethodMember" xlink:label="cwco_DiscountedCashFlowMethodMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DiscountedCashFlowMethodMember" xlink:to="cwco_DiscountedCashFlowMethodMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DiscountedCashFlowMethodMember_lbl" xml:lang="en-US">Discounted Cash Flow Method [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuidelinePublicCompanyMethodMember" xlink:label="cwco_GuidelinePublicCompanyMethodMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_GuidelinePublicCompanyMethodMember" xlink:to="cwco_GuidelinePublicCompanyMethodMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_GuidelinePublicCompanyMethodMember_lbl" xml:lang="en-US">Guideline Public Company Method [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_SegmentRetailMember" xlink:to="cwco_SegmentRetailMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_SegmentRetailMember_lbl" xml:lang="en-US">Represents the information pertaining to Retail.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_SegmentRetailMember_lbl" xml:lang="en-US">Retail [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_BulkMember" xlink:to="cwco_BulkMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_BulkMember_lbl" xml:lang="en-US">Bulk [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ServicesMember" xlink:to="cwco_ServicesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ServicesMember_lbl" xml:lang="en-US">Services [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ManufacturingUnitsMember" xlink:to="cwco_ManufacturingUnitsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ManufacturingUnitsMember_lbl" xml:lang="en-US">Manufacturing Units [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_lbl" xml:lang="en-US">Concentration Risk Benchmark [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesRevenueNetMember_lbl" xml:lang="en-US">Revenue Benchmark [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GrossProfitMember" xlink:label="cwco_GrossProfitMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_GrossProfitMember" xlink:to="cwco_GrossProfitMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_GrossProfitMember_lbl" xml:lang="en-US">Refers to gross profit member.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_GrossProfitMember_lbl" xml:lang="en-US">Gross Profit [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskTypeDomain_lbl" xml:lang="en-US">Concentration Risk Type [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerConcentrationRiskMember_lbl" xml:lang="en-US">Customer Concentration Risk [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValuePercentageSegmentReportingInformation" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EstimatedFairValuePercentageSegmentReportingInformation" xlink:to="cwco_EstimatedFairValuePercentageSegmentReportingInformation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation_lbl" xml:lang="en-US">Represents the estimated fair value of reporting segments.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation_lbl" xml:lang="en-US">Estimated Fair Value Percentage Segment Reporting Information</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation_lbl" xml:lang="en-US">Estimated Fair Value Percentage Segment Reporting Information</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValueCarryingAmountExceededPercentage" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EstimatedFairValueCarryingAmountExceededPercentage" xlink:to="cwco_EstimatedFairValueCarryingAmountExceededPercentage_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage_lbl" xml:lang="en-US">Represents the exceeded percentage of estimated fair value of reporting segments.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage_lbl" xml:lang="en-US">Estimated Fair Value carrying Amount Exceeded Percentage</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage_lbl" xml:lang="en-US">Estimated Fair Value Carrying Amount Exceeded Percentage</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xml:lang="en-US">Concentration Risk, Percentage</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl" xml:lang="en-US">Percentage of total</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_lbl" xml:lang="en-US">Business Acquisition, Percentage of Voting Interests Acquired</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_lbl" xml:lang="en-US">Ownership interest acquired</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfCustomers" xlink:label="cwco_NumberOfCustomers" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfCustomers" xlink:to="cwco_NumberOfCustomers_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfCustomers_lbl" xml:lang="en-US">Refers to the number of customers.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfCustomers_lbl" xml:lang="en-US">Number of Customers</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfCustomers_lbl" xml:lang="en-US">Number of customers</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Finite Lived Intangible Assets Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl" xml:lang="en-US">Unamortized balance of intangible assets</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:to="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_lbl" xml:lang="en-US">Capitalized Engineering Labor and Materials Cost [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CriteriaForRecognizingInvestmentAtCost" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CriteriaForRecognizingInvestmentAtCost" xlink:to="cwco_CriteriaForRecognizingInvestmentAtCost_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost_lbl" xml:lang="en-US">Represents the conditions to recognize the investment value in cost.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost_lbl" xml:lang="en-US">Criteria For Recognizing Investment At Cost</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost_lbl" xml:lang="en-US">Criteria for recognizing investment at cost</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:to="us-gaap_EquityMethodInvestmentAdditionalInformation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation_lbl" xml:lang="en-US">Equity Method Investment, Additional Information</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:to="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_lbl" xml:lang="en-US">Accumulated Amortization of Other Deferred Costs</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssets" xlink:label="us-gaap_OtherAssets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssets" xlink:to="us-gaap_OtherAssets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssets_lbl" xml:lang="en-US">Other Assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAmortizationOfDeferredCharges" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAmortizationOfDeferredCharges" xlink:to="us-gaap_OtherAmortizationOfDeferredCharges_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges_lbl" xml:lang="en-US">Amortization of Other Deferred Charges</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:to="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_lbl" xml:lang="en-US">The amount required to reduce the amount of water lost by the public water distribution system.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_lbl" xml:lang="en-US">Amount Required To Reduce Amount Of Water Lost By Public Water Distribution System</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_lbl" xml:lang="en-US">Amount required to reduce the amount of water lost by the public water distribution system</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_lbl" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BuildingMember" xlink:to="us-gaap_BuildingMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BuildingMember_lbl" xml:lang="en-US">Building [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAndEquipmentMember" xlink:label="cwco_PlantAndEquipmentMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PlantAndEquipmentMember" xlink:to="cwco_PlantAndEquipmentMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PlantAndEquipmentMember_lbl" xml:lang="en-US">Plant And Equipment [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DistributionSystemsMember" xlink:label="cwco_DistributionSystemsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DistributionSystemsMember" xlink:to="cwco_DistributionSystemsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DistributionSystemsMember_lbl" xml:lang="en-US">Distribution Systems [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl" xml:lang="en-US">Office furniture, fixtures and equipment [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VehiclesMember" xlink:to="us-gaap_VehiclesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VehiclesMember_lbl" xml:lang="en-US">Vehicles [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LabEquipmentMember" xlink:label="cwco_LabEquipmentMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_LabEquipmentMember" xlink:to="cwco_LabEquipmentMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_LabEquipmentMember_lbl" xml:lang="en-US">Lab equipment [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_lbl" xml:lang="en-US">Property, Plant and Equipment, Useful Life</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" xlink:label="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" xlink:to="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives_lbl" xml:lang="en-US">Property, Plant and Equipment, Estimated Useful Lives</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipAxis" xlink:to="srt_OwnershipAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_OwnershipAxis_lbl" xml:lang="en-US">Ownership [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_OwnershipDomain" xlink:to="srt_OwnershipDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_OwnershipDomain_lbl" xml:lang="en-US">Ownership [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xml:lang="en-US">Noncontrolling Interest, Ownership Percentage by Parent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_lbl" xml:lang="en-US">Ownership interest held</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xml:lang="en-US">Business Combination, Consideration Transferred</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_lbl" xml:lang="en-US">Cash</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestCostsCapitalized" xlink:label="us-gaap_InterestCostsCapitalized" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestCostsCapitalized" xlink:to="us-gaap_InterestCostsCapitalized_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestCostsCapitalized_lbl" xml:lang="en-US">Interest Costs Capitalized</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xml:lang="en-US">Revenue, Remaining Performance Obligation, Amount</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xml:lang="en-US">Revenue remaining performance obligation, Amount</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xml:lang="en-US">Unsatisfied or partially unsatisfied performance obligations for contracts in progress</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable_lbl" xml:lang="en-US">Schedule of Cash and Cash Equivalents [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_CurrencyAxis" xlink:label="srt_CurrencyAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_CurrencyAxis" xlink:to="srt_CurrencyAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_CurrencyAxis_lbl" xml:lang="en-US">Currency [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_AllCurrenciesDomain" xlink:label="currency_AllCurrenciesDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="currency_AllCurrenciesDomain" xlink:to="currency_AllCurrenciesDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="currency_AllCurrenciesDomain_lbl" xml:lang="en-US">All Currencies [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_USD" xlink:label="currency_USD" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="currency_USD" xlink:to="currency_USD_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="currency_USD_lbl" xml:lang="en-US">United States dollar [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_KYD" xlink:label="currency_KYD" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="currency_KYD" xlink:to="currency_KYD_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="currency_KYD_lbl" xml:lang="en-US">Cayman Islands dollar [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BSD" xlink:label="currency_BSD" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="currency_BSD" xlink:to="currency_BSD_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="currency_BSD_lbl" xml:lang="en-US">Bahamian dollar [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BMD" xlink:label="currency_BMD" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="currency_BMD" xlink:to="currency_BMD_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="currency_BMD_lbl" xml:lang="en-US">Bermudian dollar [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsLineItems" xlink:to="us-gaap_CashAndCashEquivalentsLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsLineItems_lbl" xml:lang="en-US">Cash and Cash Equivalents [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="us-gaap_Cash" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Cash" xlink:to="us-gaap_Cash_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Cash_lbl" xml:lang="en-US">Cash</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Cash_lbl" xml:lang="en-US">Bank accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable_lbl" xml:lang="en-US">Schedule of Accounts, Notes, Loans and Financing Receivable [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsNotesAndLoansReceivableLineItems" xlink:to="us-gaap_AccountsNotesAndLoansReceivableLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsNotesAndLoansReceivableLineItems_lbl" xml:lang="en-US">Accounts, Notes, Loans and Financing Receivable [Line Items]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableTradeCurrent" xlink:label="cwco_AccountsReceivableTradeCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AccountsReceivableTradeCurrent" xlink:to="cwco_AccountsReceivableTradeCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AccountsReceivableTradeCurrent_lbl" xml:lang="en-US">Carrying value as of the balance sheet date of trade receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AccountsReceivableTradeCurrent_lbl" xml:lang="en-US">Accounts Receivable Trade Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_AccountsReceivableTradeCurrent_lbl" xml:lang="en-US">Trade accounts receivable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DueFromAffiliateCurrent" xlink:label="us-gaap_DueFromAffiliateCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DueFromAffiliateCurrent" xlink:to="us-gaap_DueFromAffiliateCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DueFromAffiliateCurrent_lbl" xml:lang="en-US">Due from Affiliate, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DueFromAffiliateCurrent_lbl" xml:lang="en-US">Receivable from OC-BVI</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableOtherCurrent" xlink:label="cwco_AccountsReceivableOtherCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AccountsReceivableOtherCurrent" xlink:to="cwco_AccountsReceivableOtherCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AccountsReceivableOtherCurrent_lbl" xml:lang="en-US">Carrying value as of the balance sheet date of other receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AccountsReceivableOtherCurrent_lbl" xml:lang="en-US">Accounts Receivable Other Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_AccountsReceivableOtherCurrent_lbl" xml:lang="en-US">Other accounts receivable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="us-gaap_AccountsReceivableGrossCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableGrossCurrent" xlink:to="us-gaap_AccountsReceivableGrossCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableGrossCurrent_lbl" xml:lang="en-US">Accounts Receivable, Gross, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AccountsReceivableGrossCurrent_lbl" xml:lang="en-US">Accounts Receivable, Gross, Current</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Allowance for Doubtful Accounts Receivable, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Allowance for doubtful accounts</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Ending allowance for doubtful accounts</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl" xml:lang="en-US">Opening allowance for doubtful accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xml:lang="en-US">Provision for Doubtful Accounts</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_lbl" xml:lang="en-US">Provision for doubtful accounts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_lbl" xml:lang="en-US">Allowance for Doubtful Accounts Receivable, Write-offs</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_lbl" xml:lang="en-US">Accounts written off during the year</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_lbl" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Recovery</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_lbl" xml:lang="en-US">Recovery of accounts written off</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryCurrentTable" xlink:to="us-gaap_InventoryCurrentTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryCurrentTable_lbl" xml:lang="en-US">Inventory, Current [Table]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterStockMember" xlink:label="cwco_WaterStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_WaterStockMember" xlink:to="cwco_WaterStockMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_WaterStockMember_lbl" xml:lang="en-US">Water stock [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsumablesStockMember" xlink:label="cwco_ConsumablesStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ConsumablesStockMember" xlink:to="cwco_ConsumablesStockMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ConsumablesStockMember_lbl" xml:lang="en-US">Consumables stock [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SparePartsStockMember" xlink:label="cwco_SparePartsStockMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_SparePartsStockMember" xlink:to="cwco_SparePartsStockMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_SparePartsStockMember_lbl" xml:lang="en-US">Spare parts stock [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryLineItems" xlink:to="us-gaap_InventoryLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryLineItems_lbl" xml:lang="en-US">Inventory [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryGross_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryGross_lbl" xml:lang="en-US">Inventory, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_InventoryGross_lbl" xml:lang="en-US">Total inventory</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_lbl" xml:lang="en-US">Disclosure of information about revenue recognized and amounts billed with regard to contracts with customers in progress.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_lbl" xml:lang="en-US">Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_lbl" xml:lang="en-US">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>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_lbl" xml:lang="en-US">Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl" xml:lang="en-US">Revenues recognized to date on contracts in process</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAmountBilled" xlink:label="cwco_ContractWithCustomerAmountBilled" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerAmountBilled" xlink:to="cwco_ContractWithCustomerAmountBilled_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerAmountBilled_lbl" xml:lang="en-US">The amount billed for contracts with customers during the period.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerAmountBilled_lbl" xml:lang="en-US">Contract With Customer, Amount Billed</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cwco_ContractWithCustomerAmountBilled_lbl" xml:lang="en-US">Amounts billed to date on contracts in process</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerRetainage" xlink:label="cwco_ContractWithCustomerRetainage" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerRetainage" xlink:to="cwco_ContractWithCustomerRetainage_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerRetainage_lbl" xml:lang="en-US">Amount of retainage with contract for customers.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerRetainage_lbl" xml:lang="en-US">Contract With Customer Retainage</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ContractWithCustomerRetainage_lbl" xml:lang="en-US">Retainage</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerNetOverbillings" xlink:label="cwco_ContractWithCustomerNetOverbillings" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ContractWithCustomerNetOverbillings" xlink:to="cwco_ContractWithCustomerNetOverbillings_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ContractWithCustomerNetOverbillings_lbl" xml:lang="en-US">The net amount of overbillings for contracts with customers, during the period.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ContractWithCustomerNetOverbillings_lbl" xml:lang="en-US">Contract With Customer, Net Overbillings</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="cwco_ContractWithCustomerNetOverbillings_lbl" xml:lang="en-US">Net contract asset</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xml:lang="en-US">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BalanceSheetLocationAbstract" xlink:label="cwco_BalanceSheetLocationAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_BalanceSheetLocationAbstract" xlink:to="cwco_BalanceSheetLocationAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_BalanceSheetLocationAbstract_lbl" xml:lang="en-US">No definition available.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_BalanceSheetLocationAbstract_lbl" xml:lang="en-US">Balance Sheet location</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LandMember" xlink:to="us-gaap_LandMember_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl" xml:lang="en-US">Property, Plant and Equipment, Gross</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" />
    <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, Depletion and Amortization, Property, Plant, and Equipment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xml:lang="en-US">Less accumulated depreciation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConstructionInProgressGross" xlink:to="us-gaap_ConstructionInProgressGross_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ConstructionInProgressGross_lbl" xml:lang="en-US">Construction in Progress, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ConstructionInProgressGross_lbl" xml:lang="en-US">Construction in progress</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalCommitments" xlink:label="cwco_CapitalCommitments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CapitalCommitments" xlink:to="cwco_CapitalCommitments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CapitalCommitments_lbl" xml:lang="en-US">Amount of capital commitments outstanding.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CapitalCommitments_lbl" xml:lang="en-US">Capital Commitments</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgressPlacedInService" xlink:label="cwco_ConstructionInProgressPlacedInService" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ConstructionInProgressPlacedInService" xlink:to="cwco_ConstructionInProgressPlacedInService_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ConstructionInProgressPlacedInService_lbl" xml:lang="en-US">Represents the amount of construction in progress placed in service.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ConstructionInProgressPlacedInService_lbl" xml:lang="en-US">Construction In Progress Placed In Service</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Depreciation" xlink:to="us-gaap_Depreciation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Depreciation_lbl" xml:lang="en-US">Depreciation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsTable" xlink:label="us-gaap_ScheduleOfInvestmentsTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInvestmentsTable" xlink:to="us-gaap_ScheduleOfInvestmentsTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInvestmentsTable_lbl" xml:lang="en-US">Schedule of Investments [Table]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NSCAguaMember" xlink:label="cwco_NSCAguaMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NSCAguaMember" xlink:to="cwco_NSCAguaMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NSCAguaMember_lbl" xml:lang="en-US">NSC Agua [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementMember" xlink:label="cwco_OptionAgreementMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OptionAgreementMember" xlink:to="cwco_OptionAgreementMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OptionAgreementMember_lbl" xml:lang="en-US">Option agreement [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesAxis" xlink:label="cwco_TypeOfPhasesAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TypeOfPhasesAxis" xlink:to="cwco_TypeOfPhasesAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TypeOfPhasesAxis_lbl" xml:lang="en-US">Type Of Phases [Axis]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesDomain" xlink:label="cwco_TypeOfPhasesDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TypeOfPhasesDomain" xlink:to="cwco_TypeOfPhasesDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TypeOfPhasesDomain_lbl" xml:lang="en-US">Type Of Phases [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FirstPhaseMember" xlink:label="cwco_FirstPhaseMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_FirstPhaseMember" xlink:to="cwco_FirstPhaseMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_FirstPhaseMember_lbl" xml:lang="en-US">First Phase [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SecondPhaseMember" xlink:label="cwco_SecondPhaseMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_SecondPhaseMember" xlink:to="cwco_SecondPhaseMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_SecondPhaseMember_lbl" xml:lang="en-US">Second Phase [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_EquityMethodInvesteeNameDomain" xlink:to="srt_EquityMethodInvesteeNameDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_EquityMethodInvesteeNameDomain_lbl" xml:lang="en-US">Investment, Name [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AguasDeRosaritoSapiDeCvMember" xlink:label="cwco_AguasDeRosaritoSapiDeCvMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AguasDeRosaritoSapiDeCvMember" xlink:to="cwco_AguasDeRosaritoSapiDeCvMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AguasDeRosaritoSapiDeCvMember_lbl" xml:lang="en-US">Aguas de Rosarito S.A.P.I. de C.V [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupClassificationAxis" xlink:to="us-gaap_DisposalGroupClassificationAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupClassificationAxis_lbl" xml:lang="en-US">Disposal Group Classification [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupClassificationDomain" xlink:to="us-gaap_DisposalGroupClassificationDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupClassificationDomain_lbl" xml:lang="en-US">Disposal Group Classification [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentDiscontinuedOperationsMember" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_lbl" xml:lang="en-US">Discontinued Operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_lbl" xml:lang="en-US">Disposal Group Name [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_lbl" xml:lang="en-US">Disposal Group Name [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_MexicoProjectDevelopmentMember" xlink:to="cwco_MexicoProjectDevelopmentMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_MexicoProjectDevelopmentMember_lbl" xml:lang="en-US">Represent the information pertaining to Mexico Project Development.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_MexicoProjectDevelopmentMember_lbl" xml:lang="en-US">Mexico Project Development</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsLineItems" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems" xlink:to="us-gaap_ScheduleOfInvestmentsLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems_lbl" xml:lang="en-US">Schedule of Investments [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_lbl" xml:lang="en-US">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalVotingInterestPercentageAfterConversionOfLoan" xlink:label="cwco_TotalVotingInterestPercentageAfterConversionOfLoan" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TotalVotingInterestPercentageAfterConversionOfLoan" xlink:to="cwco_TotalVotingInterestPercentageAfterConversionOfLoan_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_TotalVotingInterestPercentageAfterConversionOfLoan_lbl" xml:lang="en-US">Total percentage of ownership interest in an acquired company.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TotalVotingInterestPercentageAfterConversionOfLoan_lbl" xml:lang="en-US">Total Voting Interest Percentage After Conversion Of Loan</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" xlink:label="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" xlink:to="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany_lbl" xml:lang="en-US">Total percentage of ownership interest in an acquired company.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany_lbl" xml:lang="en-US">Total Percentage Of Ownership Interest In An Acquired Company</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" xlink:label="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" xlink:to="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity_lbl" xml:lang="en-US">The processing capacity per day seawater reverse osmosis desalination plant.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity_lbl" xml:lang="en-US">Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfLand" xlink:to="us-gaap_AreaOfLand_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_lbl" xml:lang="en-US">Equity Method Investment, Ownership Percentage</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodInWhichConstructionMustBeCompleted" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PeriodInWhichConstructionMustBeCompleted" xlink:to="cwco_PeriodInWhichConstructionMustBeCompleted_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted_lbl" xml:lang="en-US">The period in which construction must be completed.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted_lbl" xml:lang="en-US">Period In Which Construction Must Be Completed</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted_lbl" xml:lang="en-US">Period in which construction must be completed</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" xlink:label="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" xlink:to="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct_lbl" xml:lang="en-US">The period required to operate and maintain the plant and aqueduct.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct_lbl" xml:lang="en-US">Period Required To Operate And Maintain Plant And Aqueduct</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentForLandAndRightOfWayHeldForDevelopment" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PaymentForLandAndRightOfWayHeldForDevelopment" xlink:to="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_lbl" xml:lang="en-US">The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_lbl" xml:lang="en-US">Payment For Land And Right Of Way Held For development</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_lbl" xml:lang="en-US">Payments for land and rights of way held for development</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" xlink:to="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_lbl" xml:lang="en-US">Number of days to submit list of non-recoverable expenses made.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_lbl" xml:lang="en-US">Number of Days to Submit List of Non-Recoverable Expenses</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_lbl" xml:lang="en-US">Number of days to submit list of non-recoverable expenses made</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscontinuedOperationsNonRecoverableExpenses" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DiscontinuedOperationsNonRecoverableExpenses" xlink:to="cwco_DiscontinuedOperationsNonRecoverableExpenses_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses_lbl" xml:lang="en-US">Refers to non-recoverable expense in discontinued operations.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses_lbl" xml:lang="en-US">Discontinued Operations, Non-Recoverable Expenses</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses_lbl" xml:lang="en-US">Amount of non-recoverable expenses</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LossContingencyDamagesSoughtValue" xlink:to="us-gaap_LossContingencyDamagesSoughtValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LossContingencyDamagesSoughtValue_lbl" xml:lang="en-US">Loss Contingency, Damages Sought, Value</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LitigationSettlementExpense" xlink:to="us-gaap_LitigationSettlementExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LitigationSettlementExpense_lbl" xml:lang="en-US">Litigation Settlement, Expense</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_lbl" xml:lang="en-US">Impairment of Long-Lived Assets Held-for-use</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_lbl" xml:lang="en-US">Impairment loss on long-lived assets</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToEnterOptionAgreement" xlink:label="cwco_PaymentsToEnterOptionAgreement" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PaymentsToEnterOptionAgreement" xlink:to="cwco_PaymentsToEnterOptionAgreement_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PaymentsToEnterOptionAgreement_lbl" xml:lang="en-US">Represents the amount spent to enter a stock option agreement.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PaymentsToEnterOptionAgreement_lbl" xml:lang="en-US">Payments To Enter Option Agreement</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsForOptionExercised" xlink:label="cwco_PaymentsForOptionExercised" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PaymentsForOptionExercised" xlink:to="cwco_PaymentsForOptionExercised_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PaymentsForOptionExercised_lbl" xml:lang="en-US">Amount of cash outflow associated with the option exercised by the entity.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PaymentsForOptionExercised_lbl" xml:lang="en-US">Payments For Option Exercised</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" xlink:label="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" xlink:to="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement_lbl" xml:lang="en-US">Percentage of voting interest acquired through Option agreements.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement_lbl" xml:lang="en-US">Percentage of Voting Interest Acquired through Option Agreement</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RepaymentOfInterCompanyLoanPayable" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_RepaymentOfInterCompanyLoanPayable" xlink:to="cwco_RepaymentOfInterCompanyLoanPayable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable_lbl" xml:lang="en-US">Represents the repayment of an inter-company loan payable through the issuance of shares of subsidiary stock.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable_lbl" xml:lang="en-US">Repayment of Inter Company Loan Payable</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable_lbl" xml:lang="en-US">Repayment of inter-company loan payable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharePrice" xlink:to="us-gaap_SharePrice_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementExpirationDate" xlink:label="cwco_OptionAgreementExpirationDate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OptionAgreementExpirationDate" xlink:to="cwco_OptionAgreementExpirationDate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OptionAgreementExpirationDate_lbl" xml:lang="en-US">Expiration date of the option agreement.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OptionAgreementExpirationDate_lbl" xml:lang="en-US">Option Agreement Expiration Date</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuaranteeFee" xlink:label="cwco_GuaranteeFee" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_GuaranteeFee" xlink:to="cwco_GuaranteeFee_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_GuaranteeFee_lbl" xml:lang="en-US">Amount of fee related to guarantee of suspension.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_GuaranteeFee_lbl" xml:lang="en-US">Guarantee Fee</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_GuaranteeFee_lbl" xml:lang="en-US">Guarantee amount required for suspension</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_lbl" xml:lang="en-US">Disposal Groups, Including Discontinued Operations [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_lbl" xml:lang="en-US">Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_lbl" xml:lang="en-US">Cash</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_lbl" xml:lang="en-US">Prepaid expenses and other current assets</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_lbl" xml:lang="en-US">Amount of disposal group, including discontinued operation, value added taxes receivable.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Value Added Taxes Receivable</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_lbl" xml:lang="en-US">Value added taxes receivable (net of allowance of $967,115 and $316,217, respectively)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_lbl" xml:lang="en-US">Property, plant and equipment, net</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_lbl" xml:lang="en-US">Amount classified as land and rights of way, attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Land And Rights Of Way</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_lbl" xml:lang="en-US">Land</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_lbl" xml:lang="en-US">Other assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_lbl" xml:lang="en-US">Assets of discontinued operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_lbl" xml:lang="en-US">Total assets of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_lbl" xml:lang="en-US">Total liabilities of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ValueAddedTaxReceivableAllowance" xlink:label="cwco_ValueAddedTaxReceivableAllowance" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ValueAddedTaxReceivableAllowance" xlink:to="cwco_ValueAddedTaxReceivableAllowance_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ValueAddedTaxReceivableAllowance_lbl" xml:lang="en-US">Amount of allowance for credit loss on value added taxes receivable.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ValueAddedTaxReceivableAllowance_lbl" xml:lang="en-US">Value Added Tax Receivable Allowance</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ValueAddedTaxReceivableAllowance_lbl" xml:lang="en-US">Value added tax, net of allowance</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromDiscontinuedOperations" xlink:label="cwco_IncomeLossFromDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_IncomeLossFromDiscontinuedOperations" xlink:to="cwco_IncomeLossFromDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_lbl" xml:lang="en-US">Amount of income (loss) from a discontinued operation.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_lbl" xml:lang="en-US">Income Loss from Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_lbl" xml:lang="en-US">Net loss from discontinued operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_lbl" xml:lang="en-US">Less discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Depreciation and Amortization</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_lbl" xml:lang="en-US">Depreciation expense</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_lbl" xml:lang="en-US">Schedule of Indefinite-Lived Intangible Assets [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncompeteAgreementsMember" xlink:to="us-gaap_NoncompeteAgreementsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncompeteAgreementsMember_lbl" xml:lang="en-US">Non-compete agreements</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NoncompeteAgreementsMember_lbl" xml:lang="en-US">Non-compete agreement</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TradeNameMember" xlink:label="cwco_TradeNameMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TradeNameMember" xlink:to="cwco_TradeNameMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TradeNameMember_lbl" xml:lang="en-US">Trade names</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CustomerBacklogMember" xlink:label="cwco_CustomerBacklogMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CustomerBacklogMember" xlink:to="cwco_CustomerBacklogMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CustomerBacklogMember_lbl" xml:lang="en-US">Customer backlogs</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementContractsMember" xlink:label="cwco_ManagementContractsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ManagementContractsMember" xlink:to="cwco_ManagementContractsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ManagementContractsMember_lbl" xml:lang="en-US">Represents information pertaining to management contracts.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ManagementContractsMember_lbl" xml:lang="en-US">Facility management contracts</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_lbl" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill) [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_lbl" xml:lang="en-US">Cost</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentForAmortizationAbstract" xlink:label="us-gaap_AdjustmentForAmortizationAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentForAmortizationAbstract" xlink:to="us-gaap_AdjustmentForAmortizationAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentForAmortizationAbstract_lbl" xml:lang="en-US">Amortization [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_AdjustmentForAmortizationAbstract_lbl" xml:lang="en-US">Accumulated amortization</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl" xml:lang="en-US">2022</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl" xml:lang="en-US">2023</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl" xml:lang="en-US">2024</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl" xml:lang="en-US">2025</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl" xml:lang="en-US">2026</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl" xml:lang="en-US">Thereafter</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xml:lang="en-US">Indefinite-lived Intangible Assets, Major Class Name [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeNamesMember" xlink:to="us-gaap_TradeNamesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeNamesMember_lbl" xml:lang="en-US">Trade name</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember_lbl" xml:lang="en-US">Customer-Related Intangible Assets [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl" />
    <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</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xml:lang="en-US">Amortization of Intangible Assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BalanceSheetLocationAxis_lbl" xml:lang="en-US">Balance Sheet Location [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BalanceSheetLocationDomain_lbl" xml:lang="en-US">Balance Sheet Location [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_lbl" xml:lang="en-US">Prepaid Expenses and Other Current Assets [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseAssetsCurrent" xlink:label="cwco_OperatingLeaseAssetsCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseAssetsCurrent" xlink:to="cwco_OperatingLeaseAssetsCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseAssetsCurrent_lbl" xml:lang="en-US">Amount of Operating Lease Assets Current.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseAssetsCurrent_lbl" xml:lang="en-US">Operating Lease Assets Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_OperatingLeaseAssetsCurrent_lbl" xml:lang="en-US">Operating lease assets, current</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_lbl" xml:lang="en-US">Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Lease, Current</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_lbl" xml:lang="en-US">Current assets of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="us-gaap_AssetsNoncurrentAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsNoncurrentAbstract" xlink:to="us-gaap_AssetsNoncurrentAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsNoncurrentAbstract_lbl" xml:lang="en-US">Assets, Noncurrent [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AssetsNoncurrentAbstract_lbl" xml:lang="en-US">Noncurrent</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_lbl" xml:lang="en-US">Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_lbl" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Lease, Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_lbl" xml:lang="en-US">Long-term assets of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseRightOfUseAssetNet" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseRightOfUseAssetNet" xlink:to="cwco_OperatingLeaseRightOfUseAssetNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet_lbl" xml:lang="en-US">Amount of lessee's right to use underlying asset net under operating lease.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet_lbl" xml:lang="en-US">Operating Lease Right of Use Asset Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet_lbl" xml:lang="en-US">Total lease right-of-use assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="us-gaap_LiabilitiesAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAbstract" xlink:to="us-gaap_LiabilitiesAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAbstract_lbl" xml:lang="en-US">Liabilities [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesAbstract_lbl" xml:lang="en-US">LIABILITIES</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_lbl" xml:lang="en-US">Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_lbl" xml:lang="en-US">Disposal Group Including Discontinued Operation Lease Current Liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_lbl" xml:lang="en-US">Current liabilities of discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Liabilities, Noncurrent [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_lbl" xml:lang="en-US">Noncurrent</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:to="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_lbl" xml:lang="en-US">Present value of lessee's discounted obligation for lease payments from operating lease, including discontinued operations.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_lbl" xml:lang="en-US">Operating Lease, Liability, Including Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_lbl" xml:lang="en-US">Total lease liabilities</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US">Operating leases, weighted average remaining lease term</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US">Operating leases, weighted average discount rate</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseCost" xlink:to="us-gaap_OperatingLeaseCost_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseCost_lbl" xml:lang="en-US">Operating Lease, Cost</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeaseCost_lbl" xml:lang="en-US">Operating lease costs</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="us-gaap_ShortTermLeaseCost" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShortTermLeaseCost" xlink:to="us-gaap_ShortTermLeaseCost_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShortTermLeaseCost_lbl" xml:lang="en-US">Short-term Lease, Cost</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShortTermLeaseCost_lbl" xml:lang="en-US">Short-term lease costs</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseCostsDiscontinuedOperations" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseCostsDiscontinuedOperations" xlink:to="cwco_OperatingLeaseCostsDiscontinuedOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations_lbl" xml:lang="en-US">Amount of operating lease cost related to discontinued operations, excluding expense for lease with term of one month or less.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations_lbl" xml:lang="en-US">Operating Lease Costs Discontinued Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations_lbl" xml:lang="en-US">Lease costs - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseCost" xlink:to="us-gaap_LeaseCost_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseCost_lbl" xml:lang="en-US">Lease, Cost</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LeaseCost_lbl" xml:lang="en-US">Total lease costs</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Operating Lease, Payments</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US">Operating cash outflows for operating leases</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseDiscontinuedOperationsPayments" xlink:label="cwco_OperatingLeaseDiscontinuedOperationsPayments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseDiscontinuedOperationsPayments" xlink:to="cwco_OperatingLeaseDiscontinuedOperationsPayments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseDiscontinuedOperationsPayments_lbl" xml:lang="en-US">Amount of cash outflow from operating lease discontinued operations, excluding payments to bring another asset to condition and location necessary for its intended use.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseDiscontinuedOperationsPayments_lbl" xml:lang="en-US">Operating Lease, Discontinued Operations, Payments</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_OperatingLeaseDiscontinuedOperationsPayments_lbl" xml:lang="en-US">Operating cash flows from operating leases - discontinued operations</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US">2022</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Two</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US">2023</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Three</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US">2024</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Four</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xml:lang="en-US">2025</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Five</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl" xml:lang="en-US">2026</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due after Year Five</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xml:lang="en-US">Thereafter</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US">Total future lease payments</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US">Less: imputed interest</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilitiesContinuingOperations" xlink:label="cwco_OperatingLeaseLiabilitiesContinuingOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OperatingLeaseLiabilitiesContinuingOperations" xlink:to="cwco_OperatingLeaseLiabilitiesContinuingOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OperatingLeaseLiabilitiesContinuingOperations_lbl" xml:lang="en-US">Present value of lessee's discounted obligation for lease payments from operating lease, continuing operations.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OperatingLeaseLiabilitiesContinuingOperations_lbl" xml:lang="en-US">Operating Lease Liabilities, Continuing Operations</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_OperatingLeaseLiabilitiesContinuingOperations_lbl" xml:lang="en-US">Total lease obligations</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" xlink:to="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_lbl" xml:lang="en-US">The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations that are not subject to income tax, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_lbl" xml:lang="en-US">Income Loss from Continuing Operations before Income Taxes, Foreign Not Subject To Income Taxes</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_lbl" xml:lang="en-US">Foreign (not subject to income taxes)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Foreign</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_lbl" xml:lang="en-US">Mexico</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Domestic</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_lbl" xml:lang="en-US">United States</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_lbl" xml:lang="en-US">Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_lbl" xml:lang="en-US">Income before income taxes</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Current Federal, State and Local, Tax Expense (Benefit) [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Current:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentFederalTaxExpenseBenefit" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xml:lang="en-US">Current Federal Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_lbl" xml:lang="en-US">Federal</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_lbl" xml:lang="en-US">State</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" />
    <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 (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Total</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:to="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Deferred Federal, State and Local, Tax Expense (Benefit) [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_lbl" xml:lang="en-US">Deferred:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Federal</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_lbl" xml:lang="en-US">State</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xml:lang="en-US">Deferred Income Taxes and Tax Credits</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl" xml:lang="en-US">Total</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_lbl" xml:lang="en-US">U.S. statutory federal rate</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_lbl" xml:lang="en-US">State taxes, net of federal effect</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_lbl" xml:lang="en-US">Nontaxable foreign income</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_lbl" xml:lang="en-US">Research &amp; Development Tax Credit</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_lbl" xml:lang="en-US">Percentage 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 Permanent items.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation Permanent Items</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_lbl" xml:lang="en-US">Permanent items</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_lbl" xml:lang="en-US">Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to goodwill impairment.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Goodwill Impairment, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_lbl" xml:lang="en-US">Goodwill impairment</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Valuation allowance for deferred tax assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNetAbstract" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract" xlink:to="us-gaap_DeferredTaxAssetsNetAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract_lbl" xml:lang="en-US">Deferred Tax Assets, Net [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract_lbl" xml:lang="en-US">Deferred tax assets:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_lbl" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards, Foreign</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_lbl" xml:lang="en-US">Operating loss carryforwards - Mexico</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsLandBasisDifference" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DeferredTaxAssetsLandBasisDifference" xlink:to="cwco_DeferredTaxAssetsLandBasisDifference_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference_lbl" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to land basis differences.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference_lbl" xml:lang="en-US">Deferred Tax Assets Land Basis Difference</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference_lbl" xml:lang="en-US">Land basis difference - Mexico</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsStartupCosts" xlink:label="cwco_DeferredTaxAssetsStartupCosts" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DeferredTaxAssetsStartupCosts" xlink:to="cwco_DeferredTaxAssetsStartupCosts_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DeferredTaxAssetsStartupCosts_lbl" xml:lang="en-US">Amount before allocation of valuation allowances of deferred tax asset attributable to start-up costs.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DeferredTaxAssetsStartupCosts_lbl" xml:lang="en-US">Deferred Tax Assets Start-up Costs</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_DeferredTaxAssetsStartupCosts_lbl" xml:lang="en-US">Start-up costs - Mexico</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl" xml:lang="en-US">Deferred Tax Assets, Tax Credit Carryforwards, Research</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_lbl" xml:lang="en-US">Research &amp; development tax credits</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:to="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_lbl" xml:lang="en-US">Deferred Tax Assets, Capital Loss Carryforwards</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_lbl" xml:lang="en-US">Loss carry forward</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_lbl" xml:lang="en-US">Accrued compensation</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xml:lang="en-US">Valuation allowances</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsNet" xlink:to="us-gaap_DeferredTaxAssetsNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxAssetsNet_lbl" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredTaxAssetsNet_lbl" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesNetAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:to="us-gaap_DeferredTaxLiabilitiesNetAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesNetAbstract_lbl" xml:lang="en-US">Deferred Tax Liabilities, Net [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesNetAbstract_lbl" xml:lang="en-US">Deferred tax liabilities:</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" xml:lang="en-US">Deferred Tax Liabilities, Property, Plant and Equipment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_lbl" xml:lang="en-US">Property and equipment</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_lbl" xml:lang="en-US">Deferred Tax Liabilities, Intangible Assets</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_lbl" xml:lang="en-US">Intangible assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxLiabilities" xlink:to="us-gaap_DeferredTaxLiabilities_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DeferredTaxLiabilities_lbl" xml:lang="en-US">Deferred Tax Liabilities, Net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_DeferredTaxLiabilities_lbl" xml:lang="en-US">Net deferred tax liability</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityAxis" xlink:to="us-gaap_IncomeTaxAuthorityAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxAuthorityAxis_lbl" xml:lang="en-US">Income Tax Authority [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityDomain" xlink:to="us-gaap_IncomeTaxAuthorityDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxAuthorityDomain_lbl" xml:lang="en-US">Income Tax Authority [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DomesticCountryMember" xlink:to="us-gaap_DomesticCountryMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DomesticCountryMember_lbl" xml:lang="en-US">Domestic Tax Authority [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StateAndLocalJurisdictionMember" xlink:to="us-gaap_StateAndLocalJurisdictionMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StateAndLocalJurisdictionMember_lbl" xml:lang="en-US">State and Local Jurisdiction [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLossCarryforwards" xlink:to="us-gaap_OperatingLossCarryforwards_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLossCarryforwards_lbl" xml:lang="en-US">Operating Loss Carryforwards</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPreferredStock" xlink:label="us-gaap_DividendsPreferredStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPreferredStock" xlink:to="us-gaap_DividendsPreferredStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsPreferredStock_lbl" xml:lang="en-US">Dividends, Preferred Stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_DividendsPreferredStock_lbl" xml:lang="en-US">Less: preferred stock dividends</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" xlink:label="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" xlink:to="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_lbl" xml:lang="en-US">Net Income (Loss) from Continuing Operations Available to Common Shareholders, Basic</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_lbl" xml:lang="en-US">Net income from continuing operations available to common shares in the determination of basic earnings per common share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic_lbl" xml:lang="en-US">Net Income (Loss) Available to Common Stockholders, Basic</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic_lbl" xml:lang="en-US">Net income (loss) available to common shares in the determination of basic earnings per common share</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_lbl" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Conversion of Preferred Stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_lbl" xml:lang="en-US">Weighted average number of preferred shares outstanding during the period (in shares)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants" xlink:label="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants" xlink:to="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_lbl" xml:lang="en-US">Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_lbl" xml:lang="en-US">Potential dilutive effect of unexercised options and unvested stock grants</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DividendsPerShareDeclared" xlink:label="cwco_DividendsPerShareDeclared" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DividendsPerShareDeclared" xlink:to="cwco_DividendsPerShareDeclared_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DividendsPerShareDeclared_lbl" xml:lang="en-US">Aggregate dividends declared during the period for each share of common stock and redeemable preferred stock outstanding.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DividendsPerShareDeclared_lbl" xml:lang="en-US">Dividends Per Share Declared</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_lbl" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentReportingInformationLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingInformationLineItems_lbl" xml:lang="en-US">Segment Reporting Information [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xml:lang="en-US">Number of Reportable Segments</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InventoryCurrentAndNoncurrent" xlink:label="cwco_InventoryCurrentAndNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_InventoryCurrentAndNoncurrent" xlink:to="cwco_InventoryCurrentAndNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_InventoryCurrentAndNoncurrent_lbl" xml:lang="en-US">Amount of inventory current and non current.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_InventoryCurrentAndNoncurrent_lbl" xml:lang="en-US">Inventory Current And Noncurrent</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_InventoryCurrentAndNoncurrent_lbl" xml:lang="en-US">Inventory, current and non-current</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AssetsContinuedOperation" xlink:label="cwco_AssetsContinuedOperation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AssetsContinuedOperation" xlink:to="cwco_AssetsContinuedOperation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AssetsContinuedOperation_lbl" xml:lang="en-US">Amount classified as assets attributable to continued operation.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AssetsContinuedOperation_lbl" xml:lang="en-US">Assets Continued Operation</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_AssetsContinuedOperation_lbl" xml:lang="en-US">Total segment assets</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_KY" xlink:to="country_KY_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_KY_lbl" xml:lang="en-US">Cayman Islands [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_US_lbl" xml:lang="en-US">United States [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_VG" xlink:label="country_VG" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_VG" xlink:to="country_VG_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_VG_lbl" xml:lang="en-US">Management Services Agreement With OC-BVI [Membre]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterAndSewerageCorporationMember" xlink:label="cwco_WaterAndSewerageCorporationMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_WaterAndSewerageCorporationMember" xlink:to="cwco_WaterAndSewerageCorporationMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_WaterAndSewerageCorporationMember_lbl" xml:lang="en-US">Water and Sewerage Corporation [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OneCustomerMember" xlink:label="cwco_OneCustomerMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OneCustomerMember" xlink:to="cwco_OneCustomerMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_OneCustomerMember_lbl" xml:lang="en-US">Represents information pertaining to customer.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OneCustomerMember_lbl" xml:lang="en-US">One Customer [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EntityWideRevenuesMajorCustomerPercentage" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EntityWideRevenuesMajorCustomerPercentage" xlink:to="cwco_EntityWideRevenuesMajorCustomerPercentage_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage_lbl" xml:lang="en-US">Percentage of revenue generated from a single external customer that accounts for 10 percent or more of an entity's revenues.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage_lbl" xml:lang="en-US">Entity Wide Revenues Major Customer Percentage</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage_lbl" xml:lang="en-US">Percentage of consolidated revenues</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xml:lang="en-US">Depreciation, Depletion and Amortization</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_lbl" xml:lang="en-US">Cost Of Revenues And General And Administrative Expenses [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ElectricityMember" xlink:label="us-gaap_ElectricityMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ElectricityMember" xlink:to="us-gaap_ElectricityMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ElectricityMember_lbl" xml:lang="en-US">Electricity [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepreciationMember" xlink:label="cwco_DepreciationMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DepreciationMember" xlink:to="cwco_DepreciationMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DepreciationMember_lbl" xml:lang="en-US">Depreciation [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FuelOilMember" xlink:label="cwco_FuelOilMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_FuelOilMember" xlink:to="cwco_FuelOilMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_FuelOilMember_lbl" xml:lang="en-US">Fuel oil [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeeCostsMember" xlink:label="cwco_EmployeeCostsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EmployeeCostsMember" xlink:to="cwco_EmployeeCostsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EmployeeCostsMember_lbl" xml:lang="en-US">Employee costs [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="us-gaap_MaintenanceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MaintenanceMember" xlink:to="us-gaap_MaintenanceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MaintenanceMember_lbl" xml:lang="en-US">Maintenance [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RoyaltiesMember" xlink:label="cwco_RoyaltiesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_RoyaltiesMember" xlink:to="cwco_RoyaltiesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_RoyaltiesMember_lbl" xml:lang="en-US">Retail license royalties [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InsuranceMember" xlink:label="cwco_InsuranceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_InsuranceMember" xlink:to="cwco_InsuranceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_InsuranceMember_lbl" xml:lang="en-US">Insurance [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MaterialsMember" xlink:label="cwco_MaterialsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_MaterialsMember" xlink:to="cwco_MaterialsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_MaterialsMember_lbl" xml:lang="en-US">Materials [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherExpenseMember" xlink:label="us-gaap_OtherExpenseMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherExpenseMember" xlink:to="us-gaap_OtherExpenseMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherExpenseMember_lbl" xml:lang="en-US">Other [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_lbl" xml:lang="en-US">Cost of revenues and general and administrative expenses [Line Items]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfessionalsFeeMember" xlink:label="cwco_ProfessionalsFeeMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ProfessionalsFeeMember" xlink:to="cwco_ProfessionalsFeeMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ProfessionalsFeeMember_lbl" xml:lang="en-US">Professional fees [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DirectorsFeesAndExpensesMember" xlink:label="cwco_DirectorsFeesAndExpensesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DirectorsFeesAndExpensesMember" xlink:to="cwco_DirectorsFeesAndExpensesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DirectorsFeesAndExpensesMember_lbl" xml:lang="en-US">Directors' fees and expenses [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmortizationOfIntangiblesMember" xlink:label="cwco_AmortizationOfIntangiblesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AmortizationOfIntangiblesMember" xlink:to="cwco_AmortizationOfIntangiblesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AmortizationOfIntangiblesMember_lbl" xml:lang="en-US">Amortization of intangibles [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OtherCreditDeviceMember" xlink:label="cwco_OtherCreditDeviceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_OtherCreditDeviceMember" xlink:to="cwco_OtherCreditDeviceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_OtherCreditDeviceMember_lbl" xml:lang="en-US">Other Credit Device [Member]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_OtherCreditDeviceMember_lbl" xml:lang="en-US">Other [Member].</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xml:lang="en-US">Risk free interest rate</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xml:lang="en-US">Expected option life (years)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xml:lang="en-US">Expected volatility</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" xml:lang="en-US">Expected dividend yield</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis_lbl" xml:lang="en-US">Option Indexed to Issuer's Equity, Type [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain_lbl" xml:lang="en-US">Option Indexed to Issuer's Equity, Type [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeStockOptionMember" xlink:to="us-gaap_EmployeeStockOptionMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeStockOptionMember_lbl" xml:lang="en-US">Employee Stock Option [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Outstanding at the ending of period -Options</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_lbl" xml:lang="en-US">Outstanding at the beginning of period -Options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xml:lang="en-US">Number of stock grant rights issued</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_lbl" xml:lang="en-US">Granted - Options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_lbl" xml:lang="en-US">Forfeited/expired - Options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Outstanding-Weighted Average Exercise Price at the ending of period - Options</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_lbl" xml:lang="en-US">Outstanding-Weighted Average Exercise Price at the beginning of period - Options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Granted-Weighted Average Exercise Price</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Exercised-Weighted Average Exercise Price</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_lbl" xml:lang="en-US">Forfeited/expired-Weighted Average Exercise Price</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_lbl" xml:lang="en-US">Outstanding-Weighted Average Remaining Contractual Life (Years)</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_lbl" xml:lang="en-US">Exercise Price Range [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_lbl" xml:lang="en-US">Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BelowMarketPriceMember" xlink:label="cwco_BelowMarketPriceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_BelowMarketPriceMember" xlink:to="cwco_BelowMarketPriceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_BelowMarketPriceMember_lbl" xml:lang="en-US">Below Market Price [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AtMarketPriceMember" xlink:label="cwco_AtMarketPriceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AtMarketPriceMember" xlink:to="cwco_AtMarketPriceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AtMarketPriceMember_lbl" xml:lang="en-US">At Market Price [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AboveMarketPriceMember" xlink:label="cwco_AboveMarketPriceMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AboveMarketPriceMember" xlink:to="cwco_AboveMarketPriceMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AboveMarketPriceMember_lbl" xml:lang="en-US">Above Market Price [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_lbl" xml:lang="en-US">Relationship to Entity [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementEmployeesMember" xlink:label="cwco_ManagementEmployeesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ManagementEmployeesMember" xlink:to="cwco_ManagementEmployeesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ManagementEmployeesMember_lbl" xml:lang="en-US">Management Employees [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeesMember" xlink:label="cwco_EmployeesMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EmployeesMember" xlink:to="cwco_EmployeesMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EmployeesMember_lbl" xml:lang="en-US">Employees [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EquityIncentivePlan2008Member" xlink:label="cwco_EquityIncentivePlan2008Member" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EquityIncentivePlan2008Member" xlink:to="cwco_EquityIncentivePlan2008Member_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EquityIncentivePlan2008Member_lbl" xml:lang="en-US">Equity Incentive Plan2008 [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardTypeAxis_lbl" xml:lang="en-US">Award Type [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" xml:lang="en-US">Equity Award [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommonStockOptionsMember" xlink:label="cwco_CommonStockOptionsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CommonStockOptionsMember" xlink:to="cwco_CommonStockOptionsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CommonStockOptionsMember_lbl" xml:lang="en-US">Common Stock Options [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonExecutiveDirectorsSharePlanMember" xlink:label="cwco_NonExecutiveDirectorsSharePlanMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NonExecutiveDirectorsSharePlanMember" xlink:to="cwco_NonExecutiveDirectorsSharePlanMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NonExecutiveDirectorsSharePlanMember_lbl" xml:lang="en-US">Non Executive Directors Share Plan [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonperformancebasedGrantsMember" xlink:label="cwco_NonperformancebasedGrantsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NonperformancebasedGrantsMember" xlink:to="cwco_NonperformancebasedGrantsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NonperformancebasedGrantsMember_lbl" xml:lang="en-US">Non-Performance-Based Grants [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PerformancebasedGrantsMember" xlink:label="cwco_PerformancebasedGrantsMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_PerformancebasedGrantsMember" xlink:to="cwco_PerformancebasedGrantsMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_PerformancebasedGrantsMember_lbl" xml:lang="en-US">Performance-Based Grants [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_lbl" xml:lang="en-US">The measurement period for cumulative financial performance targets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_lbl" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Measurement Period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_lbl" xml:lang="en-US">Cumulative financial performance targets measurement period</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation_lbl" xml:lang="en-US">Shares Granted, Value, Share-based Payment Arrangement, after Forfeiture</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation_lbl" xml:lang="en-US">Number of vested shares issued</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:to="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_lbl" xml:lang="en-US">Allocated Share-based Compensation Expense, Net of Tax</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_lbl" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm_lbl" xml:lang="en-US">Weighted average remaining contractual term for non vested options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm_lbl" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_lbl" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" xlink:to="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_lbl" xml:lang="en-US">The additional consecutive individual requisite service period required for eligibility in the Employee Share Incentive Plan.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_lbl" xml:lang="en-US">Additional Consecutive Individual Requisite Service Period</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_lbl" xml:lang="en-US">Additional consecutive individual requisite service period required for eligibility in Employee Share Incentive Plan</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioPreferredShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_StockholdersEquityNoteConversionRatioPreferredShares" xlink:to="cwco_StockholdersEquityNoteConversionRatioPreferredShares_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares_lbl" xml:lang="en-US">The number of preferred shares converted to common shares dependent upon specific criteria.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares_lbl" xml:lang="en-US">Stockholders Equity Note Conversion Ratio Preferred Shares</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares_lbl" xml:lang="en-US">Number of preferred shares converted to common shares dependent upon specific criteria</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioCommonShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_StockholdersEquityNoteConversionRatioCommonShares" xlink:to="cwco_StockholdersEquityNoteConversionRatioCommonShares_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares_lbl" xml:lang="en-US">The number of common shares received upon conversion of preferred shares dependent upon specific criteria.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares_lbl" xml:lang="en-US">Stockholders Equity Note Conversion Ratio Common Shares</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares_lbl" xml:lang="en-US">Number of common shares received upon conversion of preferred shares dependent upon specific criteria</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" xlink:to="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_lbl" xml:lang="en-US">The number of average trading price of the common stock.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_lbl" xml:lang="en-US">Number Of Days Of Average Trading Price Of Common Stock</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_lbl" xml:lang="en-US">Number of average trading price of the common stock</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" xlink:to="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_lbl" xml:lang="en-US">The number of days employee option to purchase preferred stock must be exercised.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_lbl" xml:lang="en-US">Number Of Days Employee Option To Purchase Preferred Stock Must Be Exercised</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_lbl" xml:lang="en-US">Number of days employee option to purchase preferred stock must be exercised</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:to="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_lbl" xml:lang="en-US">Stock Issued During Period, Shares, Issued for Services</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xml:lang="en-US">Allocated Share-based Compensation Expense</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ClosingPriceOfCommonShares" xlink:label="cwco_ClosingPriceOfCommonShares" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_ClosingPriceOfCommonShares" xlink:to="cwco_ClosingPriceOfCommonShares_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_ClosingPriceOfCommonShares_lbl" xml:lang="en-US">Closing price of the common shares.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_ClosingPriceOfCommonShares_lbl" xml:lang="en-US">Closing Price of Common Shares</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanAxis" xlink:label="cwco_RetirementPlanAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_RetirementPlanAxis" xlink:to="cwco_RetirementPlanAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_RetirementPlanAxis_lbl" xml:lang="en-US">Retirement Plan [Axis]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanDomain" xlink:label="cwco_RetirementPlanDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_RetirementPlanDomain" xlink:to="cwco_RetirementPlanDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_RetirementPlanDomain_lbl" xml:lang="en-US">Retirement Plan [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_FL" xlink:label="stpr_FL" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="stpr_FL" xlink:to="stpr_FL_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="stpr_FL_lbl" xml:lang="en-US">FLORIDA</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_CA" xlink:label="stpr_CA" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="stpr_CA" xlink:to="stpr_CA_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="stpr_CA_lbl" xml:lang="en-US">California [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_lbl" xml:lang="en-US">Information about percentage employer matches of the employee's percentage contribution matched.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match [Axis]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_lbl" xml:lang="en-US">Information about percentage employer matches of the employee's percentage contribution matched.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_lbl" xml:lang="en-US">This member stands for 25% of matching contribution by employer under the defined contribution plan.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, 25 Percent of Match [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:to="us-gaap_DefinedBenefitPlanDisclosureLineItems_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionExpense" xlink:label="us-gaap_PensionExpense" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PensionExpense" xlink:to="us-gaap_PensionExpense_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PensionExpense_lbl" xml:lang="en-US">Pension Cost (Reversal of Cost)</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PensionExpense_lbl" xml:lang="en-US">Pension Expense</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_lbl" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount_lbl" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount_lbl" xml:lang="en-US">Maximum annual contribution amount</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_lbl" xml:lang="en-US">Employer Matching Contribution, Percent of Match</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_lbl" xml:lang="en-US">Employer Matching Contribution, Percent of Employees' Gross Pay</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_lbl" xml:lang="en-US">Fair Value Measurements, Recurring and Nonrecurring [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="us-gaap_FairValueByAssetClassAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByAssetClassAxis" xlink:to="us-gaap_FairValueByAssetClassAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_lbl" xml:lang="en-US">Asset Class [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_lbl" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_lbl" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel2Member" xlink:to="us-gaap_FairValueInputsLevel2Member_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel2Member_lbl" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueInputsLevel3Member" xlink:to="us-gaap_FairValueInputsLevel3Member_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueInputsLevel3Member_lbl" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_lbl" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" xlink:label="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" xlink:to="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract_lbl" xml:lang="en-US">Financial Instruments, Financial Assets, Balance Sheet Groupings [Abstract]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_lbl" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers, Net [Abstract]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_lbl" xml:lang="en-US">Recurring</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_lbl" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_lbl" xml:lang="en-US">Net (liability)/asset arising from put/call options</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" xlink:to="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_lbl" xml:lang="en-US">Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis with Unobservable Inputs</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_lbl" xml:lang="en-US">Balance as of December 31, 2021</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_lbl" xml:lang="en-US">Balance as of December 31, 2020</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings" xlink:to="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings_lbl" xml:lang="en-US">Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Inputs Reconciliation, Gain (Loss) Included in Earnings</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings_lbl" xml:lang="en-US">Unrealized gain</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" xlink:to="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_lbl" xml:lang="en-US">The duration certain foreign currencies are fixed to the dollar.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_lbl" xml:lang="en-US">Term Of Foreign Exchange Risk To Dollar For Certain Currencies</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_lbl" xml:lang="en-US">Duration certain foreign currencies are fixed to the dollar</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesTable" xlink:label="cwco_CommitmentsAndContingenciesTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CommitmentsAndContingenciesTable" xlink:to="cwco_CommitmentsAndContingenciesTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CommitmentsAndContingenciesTable_lbl" xml:lang="en-US">Commitments And Contingencies [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_MajorCustomersAxis_lbl" xml:lang="en-US">Customer [Axis]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_NameOfMajorCustomerDomain_lbl" xml:lang="en-US">Customer [Domain]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WSCMember" xlink:label="cwco_WSCMember" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_WSCMember" xlink:to="cwco_WSCMember_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_WSCMember_lbl" xml:lang="en-US">WSC [Member]</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesLineItems" xlink:label="cwco_CommitmentsAndContingenciesLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CommitmentsAndContingenciesLineItems" xlink:to="cwco_CommitmentsAndContingenciesLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CommitmentsAndContingenciesLineItems_lbl" xml:lang="en-US">na</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CommitmentsAndContingenciesLineItems_lbl" xml:lang="en-US">Commitments And Contingencies [ Line Items ]</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="cwco_CommitmentsAndContingenciesLineItems_lbl" xml:lang="en-US">Contingencies</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmploymentAgreementBaseAnnualSalaries" xlink:label="cwco_EmploymentAgreementBaseAnnualSalaries" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_EmploymentAgreementBaseAnnualSalaries" xlink:to="cwco_EmploymentAgreementBaseAnnualSalaries_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_EmploymentAgreementBaseAnnualSalaries_lbl" xml:lang="en-US">Represents the base annual salary amount, under the employment agreement.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_EmploymentAgreementBaseAnnualSalaries_lbl" xml:lang="en-US">Employment Agreement Base Annual Salaries</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportingUnits" xlink:label="us-gaap_NumberOfReportingUnits" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportingUnits" xlink:to="us-gaap_NumberOfReportingUnits_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NumberOfReportingUnits_lbl" xml:lang="en-US">Number of Reporting Units</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NumberOfReportingUnits_lbl" xml:lang="en-US">Number of reporting units</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfRevenue" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfRevenue" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CaymanWaterRetailOperationsPercentageOfRevenue" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfRevenue_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfRevenue_lbl" xml:lang="en-US">Represents the percentage of consolidated revenue from Cayman Water retail operations.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfRevenue_lbl" xml:lang="en-US">Cayman Water Retail Operations, Percentage Of Revenue</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit_lbl" xml:lang="en-US">Represents the percentage of consolidated gross profit from Cayman Water retail operations.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit_lbl" xml:lang="en-US">Cayman Water Retail Operations, Percentage Of Gross Profit</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentAmount" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount_lbl" xml:lang="en-US">Long-term Purchase Commitment, Amount</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_lbl" />
    <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, Net</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US">Payments in accounts receivable</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_lbl" xml:lang="en-US">Schedule of Related Party Transactions, by Related Party [Table]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl" />
    <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]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyDomain" xlink:to="us-gaap_RelatedPartyDomain_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyDomain_lbl" xml:lang="en-US">Related Party [Domain]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionLineItems" xlink:to="us-gaap_RelatedPartyTransactionLineItems_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionLineItems_lbl" xml:lang="en-US">Related Party Transaction [Line Items]</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:to="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_lbl" xml:lang="en-US">Related Party Transaction, Expenses from Transactions with Related Party</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_lbl" xml:lang="en-US">Amount of expense related to sublease agreement</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl" />
    <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, Excluding Capitalized Interest, Operating Activities</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestPaidNet_lbl" xml:lang="en-US">Interest paid in cash</label>
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrentAndNoncurrent" xlink:label="us-gaap_DividendsPayableCurrentAndNoncurrent" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DividendsPayableCurrentAndNoncurrent" xlink:to="us-gaap_DividendsPayableCurrentAndNoncurrent_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DividendsPayableCurrentAndNoncurrent_lbl" xml:lang="en-US">Dividends Payable</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DividendsPayableCurrentAndNoncurrent_lbl" xml:lang="en-US">Dividends declared but not paid</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment" xlink:label="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment" xlink:to="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_lbl" xml:lang="en-US">Amount of transfers from inventory to property plant and equipment and construction in progress.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_lbl" xml:lang="en-US">Transfers Between Inventory And Property Plant And Equipment</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_lbl" xml:lang="en-US">Transfers from inventory to property, plant and equipment and construction in progress</label>
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" xlink:label="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" />
    <labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" xlink:to="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_lbl" />
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:label="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Amount of transfers from Construction in Progress to property, plant and equipment, net.</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Non cash Transactions, Transfers from Construction in Progress to property, plant and equipment, net</label>
    <label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_lbl" xml:lang="en-US">Transfers from construction in progress to property, plant and equipment</label>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>16
<FILENAME>cwco-20211231_pre.xml
<DESCRIPTION>EX-101.PRE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--XBRL document created with Toppan Merrill Bridge  9.6.8042.36810 -->
<!--Based on XBRL 2.1-->
<!--Created on: 3/29/2022 8:51:23 PM-->
<!--Modified on: 3/29/2022 8:51:23 PM-->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DocumentDocumentAndEntityInformation" roleURI="http://www.cwco.com/role/DocumentDocumentAndEntityInformation" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedBalanceSheets" roleURI="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedBalanceSheetsParenthetical" roleURI="http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfIncome" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfIncomeParenthetical" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#StatementConsolidatedStatementsOfCashFlows" roleURI="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePrincipalActivity" roleURI="http://www.cwco.com/role/DisclosurePrincipalActivity" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPolicies" roleURI="http://www.cwco.com/role/DisclosureAccountingPolicies" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCashAndCashEquivalents" roleURI="http://www.cwco.com/role/DisclosureCashAndCashEquivalents" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountsReceivableNet" roleURI="http://www.cwco.com/role/DisclosureAccountsReceivableNet" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureInventory" roleURI="http://www.cwco.com/role/DisclosureInventory" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgress" roleURI="http://www.cwco.com/role/DisclosureContractsInProgress" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgress" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperations" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperations" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssets" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssets" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeases" roleURI="http://www.cwco.com/role/DisclosureLeases" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxes" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxes" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureEarningsPerShare" roleURI="http://www.cwco.com/role/DisclosureEarningsPerShare" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDividends" roleURI="http://www.cwco.com/role/DisclosureDividends" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformation" roleURI="http://www.cwco.com/role/DisclosureSegmentInformation" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensation" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensation" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRetirementBenefits" roleURI="http://www.cwco.com/role/DisclosureRetirementBenefits" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstruments" roleURI="http://www.cwco.com/role/DisclosureFinancialInstruments" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCommitmentsAndContingencies" roleURI="http://www.cwco.com/role/DisclosureCommitmentsAndContingencies" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRelatedPartyTransactions" roleURI="http://www.cwco.com/role/DisclosureRelatedPartyTransactions" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSupplementalDisclosureOfCashFlowInformation" roleURI="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureImpactOfRecentAccountingStandards" roleURI="http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSubsequentEvents" roleURI="http://www.cwco.com/role/DisclosureSubsequentEvents" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesPolicies" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesTables" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCashAndCashEquivalentsTables" roleURI="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountsReceivableNetTables" roleURI="http://www.cwco.com/role/DisclosureAccountsReceivableNetTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureInventoryTables" roleURI="http://www.cwco.com/role/DisclosureInventoryTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgressTables" roleURI="http://www.cwco.com/role/DisclosureContractsInProgressTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsTables" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsTables" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesTables" roleURI="http://www.cwco.com/role/DisclosureLeasesTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesTables" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureEarningsPerShareTables" roleURI="http://www.cwco.com/role/DisclosureEarningsPerShareTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDividendsTables" roleURI="http://www.cwco.com/role/DisclosureDividendsTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationTables" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationTables" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsTables" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSupplementalDisclosureOfCashFlowInformationTables" roleURI="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesDisaggregatedRevenueDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountingPoliciesAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCashAndCashEquivalentsDetails" roleURI="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountsReceivableNetDetails" roleURI="http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" roleURI="http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureInventoryDetails" roleURI="http://www.cwco.com/role/DisclosureInventoryDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureContractsInProgressDetails" roleURI="http://www.cwco.com/role/DisclosureContractsInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDiscontinuedOperationsFinancialInformationDetails" roleURI="http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIntangibleAssetsDetails" roleURI="http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesComponentsOfLeaseCostDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesSupplementalCashFlowInformationDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureLeasesFutureLeasePaymentsDetails" roleURI="http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureIncomeTaxesAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureEarningsPerShareDetails" roleURI="http://www.cwco.com/role/DisclosureEarningsPerShareDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureDividendsDetails" roleURI="http://www.cwco.com/role/DisclosureDividendsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSegmentInformationAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" roleURI="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationStockOptionActivityDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureStockBasedCompensationDetails" roleURI="http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRetirementBenefitsDetails" roleURI="http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsDetails" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsLevel3ActivityDetails" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureFinancialInstrumentsAdditionalInformationDetails" roleURI="http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureCommitmentsAndContingenciesDetails" roleURI="http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureRelatedPartyTransactionsDetails" roleURI="http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" />
  <roleRef xlink:type="simple" xlink:href="cwco-20211231.xsd#DisclosureSupplementalDisclosureOfCashFlowInformationDetails" roleURI="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" />
  <presentationLink xlink:role="http://www.cwco.com/role/DocumentDocumentAndEntityInformation" xlink:type="extended" xlink:title="00090 - Document - Document and Entity Information">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DocumentAndEntityInformationAbstract" xlink:label="loc_cwco_DocumentAndEntityInformationAbstract_187665" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType" xlink:label="dei_DocumentType_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentType_637841838804374299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentAnnualReport_637841838804374299" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentPeriodEndDate_637841838804374299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentTransitionReport_637841838804374299" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityFileNumber_637841838804374299" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityRegistrantName_637841838804374299" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityIncorporationStateCountryCode_637841838804374299" order="7" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityTaxIdentificationNumber_637841838804374299" order="8" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressAddressLine1_637841838804374299" order="9" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2_637841838804374299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressAddressLine2_637841838804374299" order="10" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressAddressLine3_637841838804384298" order="11" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressCityOrTown_637841838804384298" order="12" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressPostalZipCode_637841838804384298" order="13" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityAddressCountry_637841838804384298" order="14" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_CityAreaCode_637841838804384298" order="15" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_LocalPhoneNumber_637841838804384298" order="16" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_Security12bTitle_637841838804384298" order="17" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_SecurityExchangeName_637841838804384298" order="18" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_TradingSymbol_637841838804384298" order="19" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityVoluntaryFilers_637841838804384298" order="20" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer_637841838804384298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityWellKnownSeasonedIssuer_637841838804384298" order="21" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus_637841838804394311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityCurrentReportingStatus_637841838804394311" order="22" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent_637841838804394311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityInteractiveDataCurrent_637841838804394311" order="23" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory_637841838804394311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityFilerCategory_637841838804394311" order="24" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntitySmallBusiness_637841838804424296" order="25" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityEmergingGrowthCompany_637841838804424296" order="26" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag" xlink:label="dei_IcfrAuditorAttestationFlag_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_IcfrAuditorAttestationFlag_637841838804424296" order="27" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName" xlink:label="dei_AuditorName_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_AuditorName_637841838804424296" order="28" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId" xlink:label="dei_AuditorFirmId_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_AuditorFirmId_637841838804424296" order="29" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation" xlink:label="dei_AuditorLocation_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_AuditorLocation_637841838804424296" order="30" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityShellCompany_637841838804424296" order="31" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding_637841838804424296" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityCommonStockSharesOutstanding_637841838804424296" order="32" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityCentralIndexKey_637841838804434298" order="33" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_CurrentFiscalYearEndDate_637841838804434298" order="34" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentFiscalYearFocus_637841838804434298" order="35" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_DocumentFiscalPeriodFocus_637841838804434298" order="36" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_AmendmentFlag_637841838804434298" order="37" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat_637841838804434298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cwco_DocumentAndEntityInformationAbstract_187665" xlink:to="dei_EntityPublicFloat_637841838804434298" order="38" use="optional" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedBalanceSheets" xlink:type="extended" xlink:title="00100 - Statement - CONSOLIDATED BALANCE SHEETS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_229" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_229" xlink:to="us-gaap_StatementTable_637841838804444297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804444297" xlink:to="us-gaap_StatementClassOfStockAxis_637841838804444297" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838804444297" xlink:to="us-gaap_ClassOfStockDomain_637841838804444297" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassAMember" xlink:label="us-gaap_CommonClassAMember_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804444297" xlink:to="us-gaap_CommonClassAMember_637841838804444297" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804444297" xlink:to="us-gaap_CommonClassBMember_637841838804444297" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804444297" xlink:to="us-gaap_StatementLineItems_637841838804444297" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804444297" xlink:to="us-gaap_AssetsAbstract_637841838804444297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_AssetsCurrentAbstract_637841838804444297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838804444297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositAtCarryingValue" xlink:label="us-gaap_CertificatesOfDepositAtCarryingValue_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_CertificatesOfDepositAtCarryingValue_637841838804444297" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_AccountsReceivableNetCurrent_637841838804444297" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_InventoryNet_637841838804444297" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_637841838804444297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_637841838804444297" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_637841838804454298" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838804444297" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838804454298" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_AssetsCurrent_637841838804454298" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_637841838804454298" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="cwco_ConstructionInProgress_637841838804454298" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_InventoryNoncurrent_637841838804454298" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestments" xlink:label="us-gaap_EquityMethodInvestments_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_EquityMethodInvestments_637841838804454298" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_Goodwill_637841838804454298" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838804454298" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_637841838804454298" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838804454298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838804454298" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_OtherAssetsNoncurrent_637841838804464312" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent_637841838804464312" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838804444297" xlink:to="us-gaap_Assets_637841838804464312" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804444297" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" xlink:to="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent_637841838804464312" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838804464312" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent" xlink:label="us-gaap_AccruedEmployeeBenefitsCurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_AccruedEmployeeBenefitsCurrent_637841838804464312" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrent" xlink:label="us-gaap_DividendsPayableCurrent_637841838804464312" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_DividendsPayableCurrent_637841838804464312" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_637841838804474300" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_LongTermDebtCurrent_637841838804474300" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_637841838804474300" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeCurrent" xlink:label="us-gaap_DeferredIncomeCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_DeferredIncomeCurrent_637841838804474300" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_637841838804474300" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_LiabilitiesCurrent_637841838804474300" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent_637841838804474300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_LongTermDebtNoncurrent_637841838804474300" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_637841838804484297" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838804484297" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838804484297" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_637841838804484297" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838804464312" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838804484297" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" xlink:to="us-gaap_Liabilities_637841838804484297" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies_637841838804484297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" xlink:to="us-gaap_CommitmentsAndContingencies_637841838804484297" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract_637841838804464312" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" xlink:to="us-gaap_StockholdersEquityAbstract_637841838804494297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_637841838804494297" xlink:to="us-gaap_PreferredStockValue_637841838804494297" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_637841838804494297" xlink:to="us-gaap_CommonStockValue_637841838804494297" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_637841838804494297" xlink:to="us-gaap_AdditionalPaidInCapital_637841838804494297" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_637841838804494297" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_637841838804494297" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_637841838804494297" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract_637841838804494297" xlink:to="us-gaap_StockholdersEquity_637841838804494297" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterest" xlink:label="us-gaap_MinorityInterest_637841838804504308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" xlink:to="us-gaap_MinorityInterest_637841838804504308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804504308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804504308" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_637841838804504308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract_637841838804494297" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_637841838804504308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical" xlink:type="extended" xlink:title="00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_308" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804504308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_308" xlink:to="us-gaap_StatementTable_637841838804504308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838804504308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804504308" xlink:to="us-gaap_StatementClassOfStockAxis_637841838804504308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838804504308" xlink:to="us-gaap_ClassOfStockDomain_637841838804514298" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassAMember" xlink:label="us-gaap_CommonClassAMember_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804514298" xlink:to="us-gaap_CommonClassAMember_637841838804514298" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonClassBMember" xlink:label="us-gaap_CommonClassBMember_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804514298" xlink:to="us-gaap_CommonClassBMember_637841838804514298" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804504308" xlink:to="us-gaap_StatementLineItems_637841838804514298" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_637841838804514298" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_PreferredStockSharesAuthorized_637841838804514298" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_PreferredStockSharesIssued_637841838804514298" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_PreferredStockSharesOutstanding_637841838804514298" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_637841838804514298" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_CommonStockSharesAuthorized_637841838804514298" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_CommonStockSharesIssued_637841838804514298" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding_637841838804514298" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804514298" xlink:to="us-gaap_CommonStockSharesOutstanding_637841838804514298" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome" xlink:type="extended" xlink:title="00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_371" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_Revenues_637841838804524300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_CostOfRevenue_637841838804524300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_GrossProfit_637841838804524300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_GeneralAndAdministrativeExpense_637841838804524300" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838804524300" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_OperatingIncomeLoss_637841838804524300" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_InterestIncomeOther_637841838804524300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_InterestExpense_637841838804524300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfitLossFromSubsidiaries" xlink:label="cwco_ProfitLossFromSubsidiaries_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="cwco_ProfitLossFromSubsidiaries_637841838804524300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromEquityMethodInvestments_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_IncomeLossFromEquityMethodInvestments_637841838804524300" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives_637841838804524300" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_637841838804524300" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract_637841838804524300" xlink:to="us-gaap_NonoperatingIncomeExpense_637841838804524300" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838804524300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838804524300" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeTaxExpenseBenefit_637841838804534300" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838804534300" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838804534300" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeLossFromContinuingOperations_637841838804534300" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838804534300" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_NetIncomeLoss_637841838804534300" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="us-gaap_EarningsPerShareBasicAbstract_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_EarningsPerShareBasicAbstract_637841838804534300" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract_637841838804534300" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerBasicShare_637841838804534300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract_637841838804534300" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare_637841838804534300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic_637841838804534300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareBasicAbstract_637841838804534300" xlink:to="us-gaap_EarningsPerShareBasic_637841838804534300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDilutedAbstract" xlink:label="us-gaap_EarningsPerShareDilutedAbstract_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_EarningsPerShareDilutedAbstract_637841838804544300" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare" xlink:label="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract_637841838804544300" xlink:to="us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare_637841838804544300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare" xlink:label="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract_637841838804544300" xlink:to="us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare_637841838804544300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EarningsPerShareDilutedAbstract_637841838804544300" xlink:to="us-gaap_EarningsPerShareDiluted_637841838804544300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockDividendsPerShareDeclared" xlink:label="us-gaap_CommonStockDividendsPerShareDeclared_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_CommonStockDividendsPerShareDeclared_637841838804544300" order="17" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_371" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_637841838804544300" order="18" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_637841838804544300" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838804544300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_637841838804544300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_637841838804544300" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_637841838804544300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical" xlink:type="extended" xlink:title="00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable_637841838804554303" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804554303" xlink:to="us-gaap_IncomeStatementLocationAxis_637841838804554303" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="us-gaap_IncomeStatementLocationDomain_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationAxis_637841838804554303" xlink:to="us-gaap_IncomeStatementLocationDomain_637841838804554303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="us-gaap_CostOfSalesMember_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_637841838804554303" xlink:to="us-gaap_CostOfSalesMember_637841838804554303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementLocationDomain_637841838804554303" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember_637841838804554303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804554303" xlink:to="us-gaap_StatementLineItems_637841838804554303" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804554303" xlink:to="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_637841838804554303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity" xlink:type="extended" xlink:title="00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_571" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_571" xlink:to="us-gaap_StatementTable_637841838804554303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804554303" xlink:to="us-gaap_StatementClassOfStockAxis_637841838804554303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RedeemablePreferredStockMember" xlink:label="us-gaap_RedeemablePreferredStockMember_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838804554303" xlink:to="us-gaap_RedeemablePreferredStockMember_637841838804554303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838804554303" xlink:to="us-gaap_ClassOfStockDomain_637841838804554303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis_637841838804554303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804554303" xlink:to="us-gaap_StatementEquityComponentsAxis_637841838804554303" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_PreferredStockMember_637841838804564299" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_CommonStockMember_637841838804564299" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_AdditionalPaidInCapitalMember_637841838804564299" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_RetainedEarningsMember_637841838804564299" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncontrollingInterestMember" xlink:label="us-gaap_NoncontrollingInterestMember_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_NoncontrollingInterestMember_637841838804564299" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838804554303" xlink:to="us-gaap_EquityComponentDomain_637841838804564299" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804554303" xlink:to="us-gaap_StatementLineItems_637841838804564299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804564299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_SharesOutstanding_637841838804564299" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_637841838804564299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:label="us-gaap_StockIssuedDuringPeriodSharesNewIssues_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodSharesNewIssues_637841838804564299" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_637841838804564299" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:label="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_637841838804564299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_637841838804564299" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodValue" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodValue_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodValue_637841838804574299" order="7" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRedeemedOrCalledDuringPeriodShares" xlink:label="us-gaap_StockRedeemedOrCalledDuringPeriodShares_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockRedeemedOrCalledDuringPeriodShares_637841838804574299" order="8" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_ProfitLoss_637841838804574299" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_637841838804574299" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_637841838804574299" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCash" xlink:label="us-gaap_DividendsCash_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_DividendsCash_637841838804574299" order="12" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercNonControllingInterestAtAcquisitionDate" xlink:label="cwco_PercNonControllingInterestAtAcquisitionDate_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="cwco_PercNonControllingInterestAtAcquisitionDate_637841838804574299" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_637841838804574299" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_637841838804574299" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding_637841838804574299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804564299" xlink:to="us-gaap_SharesOutstanding_637841838804574299" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows" xlink:type="extended" xlink:title="00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract_637241144210621299" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract_637241144210621299" xlink:to="us-gaap_StatementTable_637841838804584299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804584299" xlink:to="dei_LegalEntityAxis_637841838804584299" order="1" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis_637841838804584299" xlink:to="dei_EntityDomain_637841838804584299" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_EntityDomain_637841838804584299" xlink:to="cwco_AerexIndustriesIncMember_637841838804584299" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_EntityDomain_637841838804584299" xlink:to="cwco_PercWaterCorporationMember_637841838804584299" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804584299" xlink:to="us-gaap_StatementLineItems_637841838804584299" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_NetIncomeLoss_637841838804584299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAttributableToNoncontrollingInterest" xlink:label="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_NetIncomeLossAttributableToNoncontrollingInterest_637841838804584299" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_ProfitLoss_637841838804584299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838804584299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838804584299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortizationDiscontinuedOperations" xlink:label="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_DepreciationAndAmortizationDiscontinuedOperations_637841838804594301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses_637841838804594301" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_637841838804594301" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_DepreciationAndAmortization_637841838804594301" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_637841838804594301" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="6" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForLoanAndLeaseLosses" xlink:label="us-gaap_ProvisionForLoanAndLeaseLosses_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_ProvisionForLoanAndLeaseLosses_637841838804594301" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrealizedGainLossOnDerivatives" xlink:label="us-gaap_UnrealizedGainLossOnDerivatives_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_UnrealizedGainLossOnDerivatives_637841838804594301" order="8" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_ShareBasedCompensation_637841838804594301" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets1" xlink:label="us-gaap_GainLossOnDispositionOfAssets1_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_GainLossOnDispositionOfAssets1_637841838804594301" order="10" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries" xlink:label="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries_637841838804594301" order="11" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentDividendsOrDistributions" xlink:label="us-gaap_EquityMethodInvestmentDividendsOrDistributions_637841838804594301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_EquityMethodInvestmentDividendsOrDistributions_637841838804594301" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_GoodwillImpairmentLoss_637841838804604301" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_637841838804584299" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset" xlink:label="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset_637841838804604301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="us-gaap_IncreaseDecreaseInInventories_637841838804604301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_637841838804604301" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability" xlink:label="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability_637841838804604301" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilities_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilities_637841838804604301" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="us-gaap_IncreaseDecreaseInDeferredRevenue_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_637841838804604301" xlink:to="us-gaap_IncreaseDecreaseInDeferredRevenue_637841838804604301" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838804604301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations_637841838804604301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations" xlink:label="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations_637841838804614299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_637841838804614299" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToAcquireCertificatesOfDeposit" xlink:label="cwco_PaymentsToAcquireCertificatesOfDeposit_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" xlink:to="cwco_PaymentsToAcquireCertificatesOfDeposit_637841838804614299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_637841838804614299" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_637841838804614299" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries" xlink:label="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_637841838804614299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" xlink:to="us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries_637841838804614299" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_637841838804614299" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_637841838804624301" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_637841838804624301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock" xlink:label="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock_637841838804624301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToMinorityShareholders" xlink:label="us-gaap_PaymentsToMinorityShareholders_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_PaymentsToMinorityShareholders_637841838804624301" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock" xlink:label="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_637841838804624301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock_637841838804624301" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_637841838804634302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_637841838804634302" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt_637841838804634302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_RepaymentsOfLongTermDebt_637841838804634302" order="6" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="7" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838804634302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_637841838804624301" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_637841838804634302" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637841838804634302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect_637841838804634302" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_637841838804634302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_637841838804634302" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_637841838804644300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_637841838804644300" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="5" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_6378418388046443001" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations_6378418388046443001" order="10" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" priority="5" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_637841838804644300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_637841838804644300" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838804644300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804584299" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838804644300" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_637841838804644300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838804644300" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_637841838804644300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_637841838804644300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838804644300" xlink:to="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_637841838804644300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosurePrincipalActivity" xlink:type="extended" xlink:title="10101 - Disclosure - Principal activity">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1138" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations_637841838804654300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_1138" xlink:to="us-gaap_NatureOfOperations_637841838804654300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPolicies" xlink:type="extended" xlink:title="10201 - Disclosure - Accounting policies">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_637841838804654300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_2" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_637841838804654300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCashAndCashEquivalents" xlink:type="extended" xlink:title="10301 - Disclosure - Cash and cash equivalents">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_637050102262911081" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_637841838804664299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract_637050102262911081" xlink:to="us-gaap_CashAndCashEquivalentsDisclosureTextBlock_637841838804664299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountsReceivableNet" xlink:type="extended" xlink:title="10401 - Disclosure - Accounts receivable, net">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract_637050102262911081" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock" xlink:label="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_637841838804664299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102262911081" xlink:to="us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock_637841838804664299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureInventory" xlink:type="extended" xlink:title="10501 - Disclosure - Inventory">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract_637050102262911081" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock_637841838804664299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract_637050102262911081" xlink:to="us-gaap_InventoryDisclosureTextBlock_637841838804664299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgress" xlink:type="extended" xlink:title="10601 - Disclosure - Contracts in progress">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_637841838804664299" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_637841838804664299" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress" xlink:type="extended" xlink:title="10701 - Disclosure - Property, plant and equipment and construction in progress">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_637050102262921067" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_637841838804674301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102262921067" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_637841838804674301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperations" xlink:type="extended" xlink:title="10801 - Disclosure - Discontinued operations">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344297" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_637841838804674301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344297" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_637841838804674301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssets" xlink:type="extended" xlink:title="10901 - Disclosure - Intangible assets">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102262931026" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_IntangibleAssetsDisclosureTextBlock_637841838804674301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102262931026" xlink:to="us-gaap_IntangibleAssetsDisclosureTextBlock_637841838804674301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeases" xlink:type="extended" xlink:title="11001 - Disclosure - Leases">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_417333" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_637841838804674301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417333" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_637841838804674301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxes" xlink:type="extended" xlink:title="11101 - Disclosure - Income taxes">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102262940998" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_637841838804684317" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102262940998" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_637841838804684317" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureEarningsPerShare" xlink:type="extended" xlink:title="11201 - Disclosure - Earnings per share">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_284" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock_637841838804684317" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_284" xlink:to="us-gaap_EarningsPerShareTextBlock_637841838804684317" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDividends" xlink:type="extended" xlink:title="11301 - Disclosure - Dividends">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsAbstract" xlink:label="us-gaap_DividendsAbstract_637050102262950975" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DividendsTextBlock" xlink:label="cwco_DividendsTextBlock_637841838804684317" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DividendsAbstract_637050102262950975" xlink:to="cwco_DividendsTextBlock_637841838804684317" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformation" xlink:type="extended" xlink:title="11401 - Disclosure - Segment information">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_290" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_637841838804684317" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_290" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_637841838804684317" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses" xlink:type="extended" xlink:title="11501 - Disclosure - Cost of revenues and general and administrative expenses">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102262950975" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_637841838804694301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102262950975" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock_637841838804694301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensation" xlink:type="extended" xlink:title="11601 - Disclosure - Stock-based compensation">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102262950975" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_637841838804694301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102262950975" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_637841838804694301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureRetirementBenefits" xlink:type="extended" xlink:title="11701 - Disclosure - Retirement benefits">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract_637050102262960945" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_637841838804694301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract_637050102262960945" xlink:to="us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_637841838804694301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstruments" xlink:type="extended" xlink:title="11801 - Disclosure - Financial instruments">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102262960945" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock_637841838804704301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102262960945" xlink:to="us-gaap_FinancialInstrumentsDisclosureTextBlock_637841838804704301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCommitmentsAndContingencies" xlink:type="extended" xlink:title="11901 - Disclosure - Commitments and contingencies">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_327" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_637841838804704301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_327" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_637841838804704301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureRelatedPartyTransactions" xlink:type="extended" xlink:title="12001 - Disclosure - Related party transactions">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsDisclosureTextBlock" xlink:label="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_637841838804704301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_RelatedPartyTransactionsDisclosureTextBlock_637841838804704301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation" xlink:type="extended" xlink:title="12101 - Disclosure - Supplemental disclosure of cash flow information">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_637050102262970917" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashFlowSupplementalDisclosuresTextBlock" xlink:label="us-gaap_CashFlowSupplementalDisclosuresTextBlock_637841838804704301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract_637050102262970917" xlink:to="us-gaap_CashFlowSupplementalDisclosuresTextBlock_637841838804704301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards" xlink:type="extended" xlink:title="12201 - Disclosure - Impact of recent accounting standards">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_333" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_637841838804714300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_333" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_637841838804714300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSubsequentEvents" xlink:type="extended" xlink:title="12301 - Disclosure - Subsequent events">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="loc_us-gaap_SubsequentEventsAbstract_336" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="us-gaap_SubsequentEventsTextBlock_637841838804714300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_336" xlink:to="us-gaap_SubsequentEventsTextBlock_637841838804714300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies" xlink:type="extended" xlink:title="20202 - Disclosure - Accounting policies (Policies)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_637841838804714300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_637841838804714300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates_637841838804714300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_UseOfEstimates_637841838804714300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock" xlink:label="us-gaap_ConsolidationPolicyTextBlock_637841838804714300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ConsolidationPolicyTextBlock_637841838804714300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_637841838804724300" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_637841838804724300" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_637841838804724300" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InventoryPolicyTextBlock_637841838804724300" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_637841838804724300" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_637841838804724300" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_637841838804724300" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_637841838804724300" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="us-gaap_InvestmentPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_InvestmentPolicyTextBlock_637841838804724300" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OtherAssetsPolicyTextBlock" xlink:label="cwco_OtherAssetsPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="cwco_OtherAssetsPolicyTextBlock_637841838804724300" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_637841838804724300" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="us-gaap_RevenueRecognitionPolicyTextBlock_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_RevenueRecognitionPolicyTextBlock_637841838804724300" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_637841838804724300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription_637841838804724300" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesTables" xlink:type="extended" xlink:title="30203 - Disclosure - Accounting policies (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:label="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_637841838804734301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_637841838804734301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_637841838804734301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_637841838804734301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables" xlink:type="extended" xlink:title="30303 - Disclosure - Cash and cash equivalents (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_637050102263000836" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock_637841838804734301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract_637050102263000836" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock_637841838804734301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountsReceivableNetTables" xlink:type="extended" xlink:title="30403 - Disclosure - Accounts receivable, net (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract_637050102263000836" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock" xlink:label="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_637841838804744301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263000836" xlink:to="us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock_637841838804744301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_637841838804744301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263000836" xlink:to="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_637841838804744301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureInventoryTables" xlink:type="extended" xlink:title="30503 - Disclosure - Inventory (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract_637050102263000836" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock_637841838804744301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract_637050102263000836" xlink:to="us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock_637841838804744301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgressTables" xlink:type="extended" xlink:title="30603 - Disclosure - Contracts in progress (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_637841838804744301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock_637841838804744301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables" xlink:type="extended" xlink:title="30703 - Disclosure - Property, plant and equipment and construction in progress (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_637050102263010808" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_637841838804754301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102263010808" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_637841838804754301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables" xlink:type="extended" xlink:title="30803 - Disclosure - Discontinued operations (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344300" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_637841838804754301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344300" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_637841838804754301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsTables" xlink:type="extended" xlink:title="30903 - Disclosure - Intangible assets (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102263020810" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_637841838804754301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102263020810" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_637841838804754301" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_637841838804754301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102263020810" xlink:to="us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_637841838804754301" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesTables" xlink:type="extended" xlink:title="31003 - Disclosure - Leases (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_417336" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock" xlink:label="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417336" xlink:to="cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock_637841838804764300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="us-gaap_LeaseCostTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417336" xlink:to="us-gaap_LeaseCostTableTextBlock_637841838804764300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:label="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417336" xlink:to="us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_637841838804764300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417336" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_637841838804764300" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesTables" xlink:type="extended" xlink:title="31103 - Disclosure - Income taxes (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102263030773" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102263030773" xlink:to="us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_637841838804764300" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102263030773" xlink:to="us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_637841838804764300" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102263030773" xlink:to="us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_637841838804764300" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_637841838804764300" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102263030773" xlink:to="us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_637841838804764300" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureEarningsPerShareTables" xlink:type="extended" xlink:title="31203 - Disclosure - Earnings per share (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_441" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_637841838804774313" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_441" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_637841838804774313" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDividendsTables" xlink:type="extended" xlink:title="31303 - Disclosure - Dividends (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsAbstract" xlink:label="us-gaap_DividendsAbstract_637050102263040732" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsDeclaredTableTextBlock" xlink:label="us-gaap_DividendsDeclaredTableTextBlock_637841838804774313" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DividendsAbstract_637050102263040732" xlink:to="us-gaap_DividendsDeclaredTableTextBlock_637841838804774313" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationTables" xlink:type="extended" xlink:title="31403 - Disclosure - Segment information (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_447" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_637841838804774313" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_447" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_637841838804774313" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock" xlink:label="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_637841838804774313" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_447" xlink:to="us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock_637841838804774313" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock" xlink:label="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock_637841838804774313" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_447" xlink:to="us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock_637841838804774313" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables" xlink:type="extended" xlink:title="31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102263050709" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_637841838804784307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102263050709" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock_637841838804784307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationTables" xlink:type="extended" xlink:title="31603 - Disclosure - Stock-based compensation (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102263050709" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_637841838804784307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102263050709" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_637841838804784307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_637841838804784307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102263050709" xlink:to="us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_637841838804784307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock" xlink:label="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_637841838804784307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102263050709" xlink:to="us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock_637841838804784307" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsTables" xlink:type="extended" xlink:title="31803 - Disclosure - Financial instruments (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_637841838804794303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_637841838804794303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables" xlink:type="extended" xlink:title="32103 - Disclosure - Supplemental disclosure of cash flow information (Tables)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_637050102263070664" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation" xlink:label="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract_637050102263070664" xlink:to="cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation_637841838804794303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesDetails" xlink:type="extended" xlink:title="40201 - Disclosure - Accounting policies (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_637522759654183614" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_637522759654183614" xlink:to="us-gaap_StatementTable_637841838804794303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804794303" xlink:to="us-gaap_CashAndCashEquivalentsAxis_637841838804794303" order="1" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAxis_637841838804794303" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804794303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804794303" xlink:to="us-gaap_CertificatesOfDepositMember_637841838804794303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804794303" xlink:to="us-gaap_StatementLineItems_637841838804794303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_637841838804794303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804794303" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_637841838804794303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepositsHeldInForeignBank" xlink:label="cwco_DepositsHeldInForeignBank_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804794303" xlink:to="cwco_DepositsHeldInForeignBank_637841838804804302" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804794303" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804804302" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804804302" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_637841838804804302" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails" xlink:type="extended" xlink:title="40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_637522760483261336" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_637522760483261336" xlink:to="us-gaap_StatementTable_637841838804804302" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="us-gaap_CashAndCashEquivalentsAxis_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804804302" xlink:to="us-gaap_CashAndCashEquivalentsAxis_637841838804804302" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAxis_637841838804804302" xlink:to="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804804302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_637841838804804302" xlink:to="us-gaap_CertificatesOfDepositMember_637841838804804302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804804302" xlink:to="us-gaap_StatementLineItems_637841838804804302" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804804302" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_637841838804804302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashUninsuredAmount" xlink:label="us-gaap_CashUninsuredAmount_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" xlink:to="us-gaap_CashUninsuredAmount_637841838804804302" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank" xlink:label="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" xlink:to="cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank_637841838804804302" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepositsHeldInForeignBank" xlink:label="cwco_DepositsHeldInForeignBank_637841838804804302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_637841838804804302" xlink:to="cwco_DepositsHeldInForeignBank_637841838804804302" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails" xlink:type="extended" xlink:title="40203 - Disclosure - Accounting policies - Disaggregated revenue (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_344078" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804844303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_344078" xlink:to="us-gaap_StatementTable_637841838804844303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838804844303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804844303" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838804844303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838804844303" xlink:to="us-gaap_SegmentDomain_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetailRevenuesMember" xlink:label="cwco_RetailRevenuesMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804854303" xlink:to="cwco_RetailRevenuesMember_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkRevenuesMember" xlink:label="cwco_BulkRevenuesMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804854303" xlink:to="cwco_BulkRevenuesMember_637841838804854303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesRevenuesMember" xlink:label="cwco_ServicesRevenuesMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804854303" xlink:to="cwco_ServicesRevenuesMember_637841838804854303" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingRevenuesMember" xlink:label="cwco_ManufacturingRevenuesMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804854303" xlink:to="cwco_ManufacturingRevenuesMember_637841838804854303" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804844303" xlink:to="srt_RangeAxis_637841838804854303" order="2" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838804854303" xlink:to="srt_RangeMember_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804854303" xlink:to="srt_MinimumMember_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804854303" xlink:to="srt_MaximumMember_637841838804854303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804844303" xlink:to="srt_StatementGeographicalAxis_637841838804854303" order="3" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis_637841838804854303" xlink:to="srt_SegmentGeographicalDomain_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838804854303" xlink:to="country_BS_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesAxis" xlink:label="srt_ConsolidatedEntitiesAxis_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804844303" xlink:to="srt_ConsolidatedEntitiesAxis_637841838804854303" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ConsolidatedEntitiesDomain" xlink:label="srt_ConsolidatedEntitiesDomain_637841838804854303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidatedEntitiesAxis_637841838804854303" xlink:to="srt_ConsolidatedEntitiesDomain_637841838804854303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsolidatedWaterBahamasMember" xlink:label="cwco_ConsolidatedWaterBahamasMember_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ConsolidatedEntitiesDomain_637841838804854303" xlink:to="cwco_ConsolidatedWaterBahamasMember_637841838804864303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804844303" xlink:to="us-gaap_StatementLineItems_637841838804864303" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804864303" xlink:to="us-gaap_Revenues_637841838804864303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804864303" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804864303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804864303" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_637841838804864303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804864303" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838804864303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfBadDebts" xlink:label="cwco_PercentageOfBadDebts_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804864303" xlink:to="cwco_PercentageOfBadDebts_637841838804864303" order="3" use="optional" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails" xlink:type="extended" xlink:title="40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_637050102263150442" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_637050102263150442" xlink:to="us-gaap_StatementTable_637841838804864303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_637841838804864303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="us-gaap_BusinessAcquisitionAxis_637841838804864303" order="1" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis_637841838804864303" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804874305" xlink:to="cwco_AerexIndustriesIncMember_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804874305" xlink:to="cwco_PercWaterCorporationMember_637841838804874305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodAxis" xlink:label="cwco_FairValueDeterminingMethodAxis_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="cwco_FairValueDeterminingMethodAxis_637841838804874305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FairValueDeterminingMethodDomain" xlink:label="cwco_FairValueDeterminingMethodDomain_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_FairValueDeterminingMethodAxis_637841838804874305" xlink:to="cwco_FairValueDeterminingMethodDomain_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscountedCashFlowMethodMember" xlink:label="cwco_DiscountedCashFlowMethodMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_FairValueDeterminingMethodDomain_637841838804874305" xlink:to="cwco_DiscountedCashFlowMethodMember_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuidelinePublicCompanyMethodMember" xlink:label="cwco_GuidelinePublicCompanyMethodMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_FairValueDeterminingMethodDomain_637841838804874305" xlink:to="cwco_GuidelinePublicCompanyMethodMember_637841838804874305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838804874305" order="3" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838804874305" xlink:to="us-gaap_SegmentDomain_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804874305" xlink:to="cwco_SegmentRetailMember_637841838804874305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804874305" xlink:to="cwco_BulkMember_637841838804874305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804874305" xlink:to="cwco_ServicesMember_637841838804874305" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804874305" xlink:to="cwco_ManufacturingUnitsMember_637841838804874305" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838804874305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838804874305" order="4" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838804874305" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_637841838804884305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838804884305" xlink:to="us-gaap_SalesRevenueNetMember_637841838804884305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GrossProfitMember" xlink:label="cwco_GrossProfitMember_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838804884305" xlink:to="cwco_GrossProfitMember_637841838804884305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="us-gaap_ConcentrationRiskByTypeAxis_637841838804884305" order="5" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis_637841838804884305" xlink:to="us-gaap_ConcentrationRiskTypeDomain_637841838804884305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskTypeDomain_637841838804884305" xlink:to="us-gaap_CustomerConcentrationRiskMember_637841838804884305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804864303" xlink:to="us-gaap_StatementLineItems_637841838804884305" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValuePercentageSegmentReportingInformation" xlink:label="cwco_EstimatedFairValuePercentageSegmentReportingInformation_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="cwco_EstimatedFairValuePercentageSegmentReportingInformation_637841838804884305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EstimatedFairValueCarryingAmountExceededPercentage" xlink:label="cwco_EstimatedFairValueCarryingAmountExceededPercentage_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="cwco_EstimatedFairValueCarryingAmountExceededPercentage_637841838804884305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1_637841838804884305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_ConcentrationRiskPercentage1_637841838804884305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="7" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838804894307" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_Goodwill_637841838804894307" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838804894307" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss" xlink:label="us-gaap_GoodwillImpairmentLoss_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_GoodwillImpairmentLoss_637841838804894307" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfCustomers" xlink:label="cwco_NumberOfCustomers_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="cwco_NumberOfCustomers_637841838804894307" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804884305" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_637841838804894307" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails" xlink:type="extended" xlink:title="40205 - Disclosure - Accounting policies - Investments and Other assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_637522779816884379" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_637522779816884379" xlink:to="us-gaap_StatementTable_637841838804894307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838804894307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804894307" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838804894307" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838804894307" xlink:to="us-gaap_SegmentDomain_637841838804904304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804904304" xlink:to="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_637841838804904304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804894307" xlink:to="us-gaap_StatementLineItems_637841838804904304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CriteriaForRecognizingInvestmentAtCost" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="cwco_CriteriaForRecognizingInvestmentAtCost_637841838804904304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="us-gaap_EquityMethodInvestmentAdditionalInformation_637841838804904304" order="2" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_637841838804904304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssets" xlink:label="us-gaap_OtherAssets_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="us-gaap_OtherAssets_637841838804904304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAmortizationOfDeferredCharges" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="us-gaap_OtherAmortizationOfDeferredCharges_637841838804904304" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804904304" xlink:to="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_637841838804904304" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails" xlink:type="extended" xlink:title="40206 - Disclosure - Accounting policies - Property, plant and equipment (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract_637050102263070664" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract_637050102263070664" xlink:to="us-gaap_StatementTable_637841838804904304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804904304" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838804904304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838804904304" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="us-gaap_BuildingMember_637841838804914303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAndEquipmentMember" xlink:label="cwco_PlantAndEquipmentMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="cwco_PlantAndEquipmentMember_637841838804914303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DistributionSystemsMember" xlink:label="cwco_DistributionSystemsMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="cwco_DistributionSystemsMember_637841838804914303" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="us-gaap_FurnitureAndFixturesMember_637841838804914303" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="us-gaap_VehiclesMember_637841838804914303" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="us-gaap_LeaseholdImprovementsMember_637841838804914303" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LabEquipmentMember" xlink:label="cwco_LabEquipmentMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838804904304" xlink:to="cwco_LabEquipmentMember_637841838804914303" order="7" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804904304" xlink:to="srt_RangeAxis_637841838804914303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838804914303" xlink:to="srt_RangeMember_637841838804914303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804914303" xlink:to="srt_MaximumMember_637841838804914303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804914303" xlink:to="srt_MinimumMember_637841838804914303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804904304" xlink:to="us-gaap_StatementLineItems_637841838804914303" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804914303" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife_637841838804914303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives" xlink:label="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives_637841838804914303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804914303" xlink:to="us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives_637841838804914303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails" xlink:type="extended" xlink:title="40207 - Disclosure - Accounting policies - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_531" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_531" xlink:to="us-gaap_StatementTable_637841838804924304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838804924304" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838804924304" xlink:to="us-gaap_SegmentDomain_637841838804924304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_SegmentRetailMember_637841838804924304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_BulkMember_637841838804924304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_ServicesMember_637841838804924304" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_ManufacturingUnitsMember_637841838804924304" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkRevenuesMember" xlink:label="cwco_BulkRevenuesMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_BulkRevenuesMember_637841838804924304" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalizedEngineeringLaborAndMaterialsCostMember" xlink:label="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838804924304" xlink:to="cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_637841838804924304" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="us-gaap_BusinessAcquisitionAxis_637841838804924304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804924304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis_637841838804924304" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804924304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804924304" xlink:to="cwco_AerexIndustriesIncMember_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838804924304" xlink:to="cwco_PercWaterCorporationMember_637841838804934302" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="srt_StatementGeographicalAxis_637841838804934302" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis_637841838804934302" xlink:to="srt_SegmentGeographicalDomain_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838804934302" xlink:to="country_BS_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="srt_RangeAxis_637841838804934302" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838804934302" xlink:to="srt_RangeMember_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804934302" xlink:to="srt_MinimumMember_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838804934302" xlink:to="srt_MaximumMember_637841838804934302" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="srt_OwnershipAxis_637841838804934302" order="5" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain_637841838804934302" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis_637841838804934302" xlink:to="srt_OwnershipDomain_637841838804934302" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember_6378418388049343021" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipDomain_637841838804934302" xlink:to="cwco_AerexIndustriesIncMember_6378418388049343021" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipDomain_637841838804934302" xlink:to="cwco_PercWaterCorporationMember_637841838804944304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838804924304" xlink:to="us-gaap_StatementLineItems_637841838804944304" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838804944304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByParent" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByParent_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByParent_637841838804944304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessCombinationConsiderationTransferred1" xlink:label="us-gaap_BusinessCombinationConsiderationTransferred1_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_BusinessCombinationConsiderationTransferred1_637841838804944304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804944304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestCostsCapitalized" xlink:label="us-gaap_InterestCostsCapitalized_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804944304" xlink:to="us-gaap_InterestCostsCapitalized_637841838804944304" order="1" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract_637841838804944304" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_637841838804944304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CriteriaForRecognizingInvestmentAtCost" xlink:label="cwco_CriteriaForRecognizingInvestmentAtCost_637841838804944304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="cwco_CriteriaForRecognizingInvestmentAtCost_637841838804944304" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentAdditionalInformation" xlink:label="us-gaap_EquityMethodInvestmentAdditionalInformation_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_EquityMethodInvestmentAdditionalInformation_637841838804954303" order="6" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedAmortizationOfOtherDeferredCosts" xlink:label="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_AccumulatedAmortizationOfOtherDeferredCosts_637841838804954303" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssets" xlink:label="us-gaap_OtherAssets_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_OtherAssets_637841838804954303" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAmortizationOfDeferredCharges" xlink:label="us-gaap_OtherAmortizationOfDeferredCharges_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_OtherAmortizationOfDeferredCharges_637841838804954303" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem" xlink:label="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem_637841838804954303" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804954303" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreCollected" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804954303" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreCollected_637841838804954303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838804954303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804954303" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838804954303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfBadDebts" xlink:label="cwco_PercentageOfBadDebts_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract_637841838804954303" xlink:to="cwco_PercentageOfBadDebts_637841838804964304" order="3" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_Revenues_637841838804964304" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838804944304" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_637841838804964304" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails" xlink:type="extended" xlink:title="40301 - Disclosure - Cash and cash equivalents (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="us-gaap_CashAndCashEquivalentsAbstract_637050102263948302" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:label="us-gaap_ScheduleOfCashAndCashEquivalentsTable_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsAbstract_637050102263948302" xlink:to="us-gaap_ScheduleOfCashAndCashEquivalentsTable_637841838804964304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_CurrencyAxis" xlink:label="srt_CurrencyAxis_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTable_637841838804964304" xlink:to="srt_CurrencyAxis_637841838804964304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_AllCurrenciesDomain" xlink:label="currency_AllCurrenciesDomain_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_CurrencyAxis_637841838804964304" xlink:to="currency_AllCurrenciesDomain_637841838804964304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_USD" xlink:label="currency_USD_637841838804964304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="currency_AllCurrenciesDomain_637841838804964304" xlink:to="currency_USD_637841838804964304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_KYD" xlink:label="currency_KYD_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="currency_AllCurrenciesDomain_637841838804964304" xlink:to="currency_KYD_637841838804974303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BSD" xlink:label="currency_BSD_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="currency_AllCurrenciesDomain_637841838804964304" xlink:to="currency_BSD_637841838804974303" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/currency/2021/currency-2021.xsd#currency_BMD" xlink:label="currency_BMD_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="currency_AllCurrenciesDomain_637841838804964304" xlink:to="currency_BMD_637841838804974303" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsLineItems" xlink:label="us-gaap_CashAndCashEquivalentsLineItems_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfCashAndCashEquivalentsTable_637841838804964304" xlink:to="us-gaap_CashAndCashEquivalentsLineItems_637841838804974303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Cash" xlink:label="us-gaap_Cash_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsLineItems_637841838804974303" xlink:to="us-gaap_Cash_637841838804974303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsLineItems_637841838804974303" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_637841838804974303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashAndCashEquivalentsLineItems_637841838804974303" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_637841838804974303" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails" xlink:type="extended" xlink:title="40401 - Disclosure - Accounts receivable, net (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract_637050102263968248" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableTradeCurrent" xlink:label="cwco_AccountsReceivableTradeCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="cwco_AccountsReceivableTradeCurrent_637841838804974303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DueFromAffiliateCurrent" xlink:label="us-gaap_DueFromAffiliateCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="us-gaap_DueFromAffiliateCurrent_637841838804974303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AccountsReceivableOtherCurrent" xlink:label="cwco_AccountsReceivableOtherCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="cwco_AccountsReceivableOtherCurrent_637841838804974303" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent" xlink:label="us-gaap_AccountsReceivableGrossCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="us-gaap_AccountsReceivableGrossCurrent_637841838804974303" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838804974303" order="5" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_637841838804974303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263968248" xlink:to="us-gaap_AccountsReceivableNetCurrent_637841838804974303" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails" xlink:type="extended" xlink:title="40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesAbstract" xlink:label="us-gaap_ReceivablesAbstract_637050102263988195" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263988195" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_637841838804984304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263988195" xlink:to="us-gaap_ProvisionForDoubtfulAccounts_637841838804984304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263988195" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs_637841838804984304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263988195" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries_637841838804984304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_6378418388049843041" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReceivablesAbstract_637050102263988195" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_6378418388049843041" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureInventoryDetails" xlink:type="extended" xlink:title="40501 - Disclosure - Inventory (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract_637050102264008143" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryCurrentTable" xlink:label="us-gaap_InventoryCurrentTable_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract_637050102264008143" xlink:to="us-gaap_InventoryCurrentTable_637841838804984304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryCurrentTable_637841838804984304" xlink:to="us-gaap_StatementClassOfStockAxis_637841838804984304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838804984304" xlink:to="us-gaap_ClassOfStockDomain_637841838804984304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterStockMember" xlink:label="cwco_WaterStockMember_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804984304" xlink:to="cwco_WaterStockMember_637841838804984304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConsumablesStockMember" xlink:label="cwco_ConsumablesStockMember_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804984304" xlink:to="cwco_ConsumablesStockMember_637841838804984304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SparePartsStockMember" xlink:label="cwco_SparePartsStockMember_637841838804984304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838804984304" xlink:to="cwco_SparePartsStockMember_637841838804984304" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryLineItems" xlink:label="us-gaap_InventoryLineItems_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryCurrentTable_637841838804984304" xlink:to="us-gaap_InventoryLineItems_637841838804994305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryLineItems_637841838804994305" xlink:to="us-gaap_InventoryGross_637841838804994305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryLineItems_637841838804994305" xlink:to="us-gaap_InventoryNet_637841838804994305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNoncurrent" xlink:label="us-gaap_InventoryNoncurrent_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryLineItems_637841838804994305" xlink:to="us-gaap_InventoryNoncurrent_637841838804994305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureContractsInProgressDetails" xlink:type="extended" xlink:title="40601 - Disclosure - Contracts in progress (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_637841838804994305" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_637841838804994305" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_637841838804994305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems" xlink:label="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable_637841838804994305" xlink:to="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_637841838804994305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerAmountBilled" xlink:label="cwco_ContractWithCustomerAmountBilled_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="cwco_ContractWithCustomerAmountBilled_637841838804994305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerRetainage" xlink:label="cwco_ContractWithCustomerRetainage_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="cwco_ContractWithCustomerRetainage_637841838804994305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ContractWithCustomerNetOverbillings" xlink:label="cwco_ContractWithCustomerNetOverbillings_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="cwco_ContractWithCustomerNetOverbillings_637841838804994305" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="9" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_637841838804994305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_637841838804994305" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_637841838805004303" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BalanceSheetLocationAbstract" xlink:label="cwco_BalanceSheetLocationAbstract_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems_637841838804994305" xlink:to="cwco_BalanceSheetLocationAbstract_637841838805004303" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_BalanceSheetLocationAbstract_637841838805004303" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_637841838805004303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_BalanceSheetLocationAbstract_637841838805004303" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_637841838805004303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="6" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails" xlink:type="extended" xlink:title="40701 - Disclosure - Property, plant and equipment and construction in progress (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264048037" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264048037" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_637841838805004303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_637841838805004303" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838805004303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis_637841838805004303" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LandMember" xlink:label="us-gaap_LandMember_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="us-gaap_LandMember_637841838805004303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingMember" xlink:label="us-gaap_BuildingMember_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="us-gaap_BuildingMember_637841838805004303" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PlantAndEquipmentMember" xlink:label="cwco_PlantAndEquipmentMember_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="cwco_PlantAndEquipmentMember_637841838805004303" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DistributionSystemsMember" xlink:label="cwco_DistributionSystemsMember_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="cwco_DistributionSystemsMember_637841838805004303" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember_637841838805004303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="us-gaap_FurnitureAndFixturesMember_637841838805004303" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="us-gaap_VehiclesMember_637841838805014304" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="us-gaap_LeaseholdImprovementsMember_637841838805014304" order="7" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_LabEquipmentMember" xlink:label="cwco_LabEquipmentMember_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentTypeDomain_637841838805004303" xlink:to="cwco_LabEquipmentMember_637841838805014304" order="8" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_637841838805004303" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_637841838805014304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_637841838805014304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_637841838805014304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross" xlink:label="us-gaap_ConstructionInProgressGross_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentLineItems_637841838805014304" xlink:to="us-gaap_ConstructionInProgressGross_637841838805014304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails" xlink:type="extended" xlink:title="40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264077967" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CapitalCommitments" xlink:label="cwco_CapitalCommitments_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264077967" xlink:to="cwco_CapitalCommitments_637841838805014304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgressPlacedInService" xlink:label="cwco_ConstructionInProgressPlacedInService_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264077967" xlink:to="cwco_ConstructionInProgressPlacedInService_637841838805014304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation" xlink:label="us-gaap_Depreciation_637841838805014304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PropertyPlantAndEquipmentAbstract_637050102264077967" xlink:to="us-gaap_Depreciation_637841838805014304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails" xlink:type="extended" xlink:title="40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsTable" xlink:label="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_2" xlink:to="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipAxis" xlink:label="srt_OwnershipAxis_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="srt_OwnershipAxis_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_OwnershipDomain" xlink:label="srt_OwnershipDomain_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipAxis_637841838805024304" xlink:to="srt_OwnershipDomain_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NSCAguaMember" xlink:label="cwco_NSCAguaMember_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_OwnershipDomain_637841838805024304" xlink:to="cwco_NSCAguaMember_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="us-gaap_StatementClassOfStockAxis_637841838805024304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838805024304" xlink:to="us-gaap_ClassOfStockDomain_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementMember" xlink:label="cwco_OptionAgreementMember_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838805024304" xlink:to="cwco_OptionAgreementMember_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesAxis" xlink:label="cwco_TypeOfPhasesAxis_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="cwco_TypeOfPhasesAxis_637841838805024304" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TypeOfPhasesDomain" xlink:label="cwco_TypeOfPhasesDomain_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_TypeOfPhasesAxis_637841838805024304" xlink:to="cwco_TypeOfPhasesDomain_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FirstPhaseMember" xlink:label="cwco_FirstPhaseMember_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_TypeOfPhasesDomain_637841838805024304" xlink:to="cwco_FirstPhaseMember_637841838805024304" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SecondPhaseMember" xlink:label="cwco_SecondPhaseMember_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_TypeOfPhasesDomain_637841838805024304" xlink:to="cwco_SecondPhaseMember_637841838805024304" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:label="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_637841838805024304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_637841838805024304" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_EquityMethodInvesteeNameDomain" xlink:label="srt_EquityMethodInvesteeNameDomain_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_637841838805024304" xlink:to="srt_EquityMethodInvesteeNameDomain_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AguasDeRosaritoSapiDeCvMember" xlink:label="cwco_AguasDeRosaritoSapiDeCvMember_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_EquityMethodInvesteeNameDomain_637841838805034307" xlink:to="cwco_AguasDeRosaritoSapiDeCvMember_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="us-gaap_DisposalGroupClassificationAxis_637841838805034307" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis_637841838805034307" xlink:to="us-gaap_DisposalGroupClassificationDomain_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain_637841838805034307" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805034307" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805034307" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805034307" xlink:to="cwco_MexicoProjectDevelopmentMember_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="srt_RangeAxis_637841838805034307" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838805034307" xlink:to="srt_RangeMember_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838805034307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838805034307" xlink:to="srt_MinimumMember_637841838805034307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInvestmentsLineItems" xlink:label="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsTable_637841838805024304" xlink:to="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners" xlink:label="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners_637841838805044304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalVotingInterestPercentageAfterConversionOfLoan" xlink:label="cwco_TotalVotingInterestPercentageAfterConversionOfLoan_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_TotalVotingInterestPercentageAfterConversionOfLoan_637841838805044304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany" xlink:label="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany_637841838805044304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity" xlink:label="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity_637841838805044304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_AreaOfLand_637841838805044304" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityMethodInvestmentOwnershipPercentage" xlink:label="us-gaap_EquityMethodInvestmentOwnershipPercentage_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_EquityMethodInvestmentOwnershipPercentage_637841838805044304" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodInWhichConstructionMustBeCompleted" xlink:label="cwco_PeriodInWhichConstructionMustBeCompleted_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PeriodInWhichConstructionMustBeCompleted_637841838805044304" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct" xlink:label="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct_637841838805044304" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentForLandAndRightOfWayHeldForDevelopment" xlink:label="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_637841838805044304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PaymentForLandAndRightOfWayHeldForDevelopment_637841838805044304" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses" xlink:label="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses_637841838805054304" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DiscontinuedOperationsNonRecoverableExpenses" xlink:label="cwco_DiscontinuedOperationsNonRecoverableExpenses_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_DiscontinuedOperationsNonRecoverableExpenses_637841838805054304" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LossContingencyDamagesSoughtValue" xlink:label="us-gaap_LossContingencyDamagesSoughtValue_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_LossContingencyDamagesSoughtValue_637841838805054304" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationSettlementExpense" xlink:label="us-gaap_LitigationSettlementExpense_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_LitigationSettlementExpense_637841838805054304" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:label="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_637841838805054304" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment_637841838805054304" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsToEnterOptionAgreement" xlink:label="cwco_PaymentsToEnterOptionAgreement_637841838805054304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PaymentsToEnterOptionAgreement_637841838805054304" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PaymentsForOptionExercised" xlink:label="cwco_PaymentsForOptionExercised_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PaymentsForOptionExercised_637841838805064305" order="17" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement" xlink:label="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement_637841838805064305" order="18" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RepaymentOfInterCompanyLoanPayable" xlink:label="cwco_RepaymentOfInterCompanyLoanPayable_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_RepaymentOfInterCompanyLoanPayable_637841838805064305" order="19" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharePrice" xlink:label="us-gaap_SharePrice_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="us-gaap_SharePrice_637841838805064305" order="20" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OptionAgreementExpirationDate" xlink:label="cwco_OptionAgreementExpirationDate_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_OptionAgreementExpirationDate_637841838805064305" order="21" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_GuaranteeFee" xlink:label="cwco_GuaranteeFee_637841838805064305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfInvestmentsLineItems_637841838805044304" xlink:to="cwco_GuaranteeFee_637841838805064305" order="22" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails" xlink:type="extended" xlink:title="40802 - Disclosure - Discontinued operations - Mexico project development (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805074305" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805074305" xlink:to="us-gaap_DisposalGroupClassificationAxis_637841838805074305" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis_637841838805074305" xlink:to="us-gaap_DisposalGroupClassificationDomain_637841838805074305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain_637841838805074305" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805074305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805074305" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805074305" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805074305" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805074305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805074305" xlink:to="cwco_MexicoProjectDevelopmentMember_637841838805074305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805074305" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents_637841838805074305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent_637841838805074305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable_637841838805074305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_637841838805074305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent_637841838805074305" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay_637841838805084320" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets_637841838805084320" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_637841838805084320" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation_637841838805084320" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ValueAddedTaxReceivableAllowance" xlink:label="cwco_ValueAddedTaxReceivableAllowance_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805074305" xlink:to="cwco_ValueAddedTaxReceivableAllowance_637841838805084320" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails" xlink:type="extended" xlink:title="40803 - Disclosure - Discontinued operations - Financial Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344334" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_344334" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805084320" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805084320" xlink:to="us-gaap_DisposalGroupClassificationAxis_637841838805084320" order="1" use="optional" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis_637841838805084320" xlink:to="us-gaap_DisposalGroupClassificationDomain_637841838805084320" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain_637841838805084320" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805084320" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805084320" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805084320" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805084320" order="2" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805084320" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805094305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MexicoProjectDevelopmentMember" xlink:label="cwco_MexicoProjectDevelopmentMember_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805094305" xlink:to="cwco_MexicoProjectDevelopmentMember_637841838805094305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable_637841838805084320" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805094305" order="3" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromDiscontinuedOperations" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805094305" xlink:to="cwco_IncomeLossFromDiscontinuedOperations_637841838805094305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/netLabel" priority="9" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization" xlink:label="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems_637841838805094305" xlink:to="us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization_637841838805094305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails" xlink:type="extended" xlink:title="40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265015465" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265015465" xlink:to="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805094305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805094305" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805094305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805094305" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" xlink:to="us-gaap_NoncompeteAgreementsMember_637841838805094305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TradeNameMember" xlink:label="cwco_TradeNameMember_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" xlink:to="cwco_TradeNameMember_637841838805094305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CustomerBacklogMember" xlink:label="cwco_CustomerBacklogMember_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" xlink:to="cwco_CustomerBacklogMember_637841838805094305" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementContractsMember" xlink:label="cwco_ManagementContractsMember_637841838805094305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805094305" xlink:to="cwco_ManagementContractsMember_637841838805094305" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805094305" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_637841838805104307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_637841838805104307" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_637841838805104307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract_637841838805104307" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_637841838805104307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentForAmortizationAbstract" xlink:label="us-gaap_AdjustmentForAmortizationAbstract_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems_637841838805104307" xlink:to="us-gaap_AdjustmentForAmortizationAbstract_637841838805104307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentForAmortizationAbstract_637841838805104307" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_637841838805104307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentForAmortizationAbstract_637841838805104307" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838805104307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails" xlink:type="extended" xlink:title="40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_637841838805104307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_637841838805104307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_637841838805104307" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_637841838805104307" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_637841838805104307" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_637841838805104307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_637841838805104307" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265085262" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_637841838805114307" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIntangibleAssetsDetails" xlink:type="extended" xlink:title="40903 - Disclosure - Intangible assets (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265115197" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable" xlink:label="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_637050102265115197" xlink:to="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="us-gaap_TradeNamesMember_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" xlink:to="us-gaap_TradeNamesMember_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" xlink:to="us-gaap_BusinessAcquisitionAxis_637841838805114307" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="us-gaap_BusinessAcquisitionAcquireeDomain_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAxis_637841838805114307" xlink:to="us-gaap_BusinessAcquisitionAcquireeDomain_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AerexIndustriesIncMember" xlink:label="cwco_AerexIndustriesIncMember_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838805114307" xlink:to="cwco_AerexIndustriesIncMember_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BusinessAcquisitionAcquireeDomain_637841838805114307" xlink:to="cwco_PercWaterCorporationMember_637841838805114307" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_637841838805114307" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="us-gaap_NoncompeteAgreementsMember_637841838805114307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" xlink:to="us-gaap_NoncompeteAgreementsMember_637841838805114307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelatedIntangibleAssetsMember" xlink:label="us-gaap_CustomerRelatedIntangibleAssetsMember_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" xlink:to="us-gaap_CustomerRelatedIntangibleAssetsMember_637841838805124305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_637841838805114307" xlink:to="us-gaap_CustomerRelationshipsMember_637841838805124305" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" xlink:to="srt_RangeAxis_637841838805124305" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838805124305" xlink:to="srt_RangeMember_637841838805124305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838805124305" xlink:to="srt_MinimumMember_637841838805124305" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838805124305" xlink:to="srt_MaximumMember_637841838805124305" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable_637841838805114307" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems_637841838805124305" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired" xlink:label="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_637841838805124305" xlink:to="us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired_637841838805124305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_637841838805124305" xlink:to="us-gaap_AmortizationOfIntangibleAssets_637841838805124305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_637841838805124305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsLineItems_637841838805124305" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_637841838805124305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails" xlink:type="extended" xlink:title="41001 - Disclosure - Leases - Lease assets and liabilities (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_StatementTable_637841838805134307" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805134307" xlink:to="us-gaap_BalanceSheetLocationAxis_637841838805134307" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis_637841838805134307" xlink:to="us-gaap_BalanceSheetLocationDomain_637841838805134307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember" xlink:label="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationDomain_637841838805134307" xlink:to="us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_637841838805134307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:label="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805134307" xlink:to="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805134307" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:label="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_637841838805134307" xlink:to="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805134307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_637841838805134307" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805134307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805134307" xlink:to="us-gaap_StatementLineItems_637841838805134307" order="3" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838805134307" xlink:to="us-gaap_AssetsAbstract_637841838805134307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838805134307" xlink:to="us-gaap_AssetsCurrentAbstract_637841838805134307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseAssetsCurrent" xlink:label="cwco_OperatingLeaseAssetsCurrent_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838805134307" xlink:to="cwco_OperatingLeaseAssetsCurrent_637841838805134307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract_637841838805134307" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent_637841838805134307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsNoncurrentAbstract" xlink:label="us-gaap_AssetsNoncurrentAbstract_637841838805134307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838805134307" xlink:to="us-gaap_AssetsNoncurrentAbstract_637841838805134307" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsNoncurrentAbstract_637841838805134307" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_637841838805144306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsNoncurrentAbstract_637841838805134307" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent_637841838805144306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseRightOfUseAssetNet" xlink:label="cwco_OperatingLeaseRightOfUseAssetNet_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract_637841838805134307" xlink:to="cwco_OperatingLeaseRightOfUseAssetNet_637841838805144306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract" xlink:label="us-gaap_LiabilitiesAbstract_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838805134307" xlink:to="us-gaap_LiabilitiesAbstract_637841838805144306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAbstract_637841838805144306" xlink:to="us-gaap_LiabilitiesCurrentAbstract_637841838805144306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838805144306" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_637841838805144306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities" xlink:label="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract_637841838805144306" xlink:to="cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities_637841838805144306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesNoncurrentAbstract" xlink:label="us-gaap_LiabilitiesNoncurrentAbstract_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAbstract_637841838805144306" xlink:to="us-gaap_LiabilitiesNoncurrentAbstract_637841838805144306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_637841838805144306" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838805144306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent" xlink:label="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesNoncurrentAbstract_637841838805144306" xlink:to="us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent_637841838805144306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations" xlink:label="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_637841838805144306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAbstract_637841838805144306" xlink:to="cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations_637841838805144306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAbstract_637841838805144306" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_637841838805154306" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAbstract_637841838805144306" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_637841838805154306" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails" xlink:type="extended" xlink:title="41002 - Disclosure - Leases - Components of lease cost (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_417404" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417404" xlink:to="us-gaap_OperatingLeaseCost_637841838805154306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShortTermLeaseCost" xlink:label="us-gaap_ShortTermLeaseCost_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417404" xlink:to="us-gaap_ShortTermLeaseCost_637841838805154306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseCostsDiscontinuedOperations" xlink:label="cwco_OperatingLeaseCostsDiscontinuedOperations_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417404" xlink:to="cwco_OperatingLeaseCostsDiscontinuedOperations_637841838805154306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeaseCost" xlink:label="us-gaap_LeaseCost_637841838805154306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417404" xlink:to="us-gaap_LeaseCost_637841838805154306" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails" xlink:type="extended" xlink:title="41003 - Disclosure - Leases - Supplemental cash flow information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_OperatingLeasePayments_637841838805164304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseDiscontinuedOperationsPayments" xlink:label="cwco_OperatingLeaseDiscontinuedOperationsPayments_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="cwco_OperatingLeaseDiscontinuedOperationsPayments_637841838805164304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails" xlink:type="extended" xlink:title="41004 - Disclosure - Leases - Future lease payments (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_417429" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_637841838805164304" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_637841838805164304" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_637841838805164304" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_637841838805164304" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_637841838805164304" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_637841838805164304" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_637841838805164304" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_637841838805164304" order="8" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OperatingLeaseLiabilitiesContinuingOperations" xlink:label="cwco_OperatingLeaseLiabilitiesContinuingOperations_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="cwco_OperatingLeaseLiabilitiesContinuingOperations_637841838805164304" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="5" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_637841838805164304" order="10" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838805164304" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_417429" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_637841838805164304" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails" xlink:type="extended" xlink:title="41101 - Disclosure - Income taxes - Components of income before income taxes (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes" xlink:label="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes_637841838805174305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_637841838805174305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_637841838805174305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments_637841838805174305" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_IncomeLossFromDiscontinuedOperations" xlink:label="cwco_IncomeLossFromDiscontinuedOperations_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="cwco_IncomeLossFromDiscontinuedOperations_637841838805174305" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265534064" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838805174305" order="6" use="optional" preferredLabel="http://www.xbrl.org/2009/role/netLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails" xlink:type="extended" xlink:title="41102 - Disclosure - Income taxes - Provision for income taxes (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102265563985" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265563985" xlink:to="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805174305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="us-gaap_CurrentFederalTaxExpenseBenefit_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805174305" xlink:to="us-gaap_CurrentFederalTaxExpenseBenefit_637841838805174305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805174305" xlink:to="us-gaap_CurrentStateAndLocalTaxExpenseBenefit_637841838805174305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838805174305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805174305" xlink:to="us-gaap_CurrentIncomeTaxExpenseBenefit_637841838805174305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract" xlink:label="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265563985" xlink:to="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805184310" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805184310" xlink:to="us-gaap_DeferredFederalIncomeTaxExpenseBenefit_637841838805184310" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805184310" xlink:to="us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_637841838805184310" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract_637841838805184310" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_637841838805184310" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265563985" xlink:to="us-gaap_IncomeTaxExpenseBenefit_637841838805184310" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails" xlink:type="extended" xlink:title="41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_637841838805184310" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes_637841838805184310" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential_637841838805184310" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch_637841838805184310" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationPermanentItems" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationPermanentItems_637841838805184310" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent" xlink:label="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent_637841838805184310" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_637841838805184310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance_637841838805184310" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637187369358622279" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_637841838805194303" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails" xlink:type="extended" xlink:title="41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102265653760" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265653760" xlink:to="us-gaap_StatementTable_637841838805194303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805194303" xlink:to="us-gaap_DisposalGroupClassificationAxis_637841838805194303" order="1" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis_637841838805194303" xlink:to="us-gaap_DisposalGroupClassificationDomain_637841838805194303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain_637841838805194303" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805194303" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805194303" xlink:to="us-gaap_StatementLineItems_637841838805194303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNetAbstract" xlink:label="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign" xlink:label="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign_637841838805194303" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsLandBasisDifference" xlink:label="cwco_DeferredTaxAssetsLandBasisDifference_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="cwco_DeferredTaxAssetsLandBasisDifference_637841838805194303" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DeferredTaxAssetsStartupCosts" xlink:label="cwco_DeferredTaxAssetsStartupCosts_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="cwco_DeferredTaxAssetsStartupCosts_637841838805194303" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch" xlink:label="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch_637841838805194303" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="6" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsCapitalLossCarryforwards" xlink:label="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_637841838805194303" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsCapitalLossCarryforwards_637841838805194303" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities" xlink:label="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities_637841838805204305" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_637841838805204305" order="7" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="us-gaap_DeferredTaxAssetsNet_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxAssetsNetAbstract_637841838805194303" xlink:to="us-gaap_DeferredTaxAssetsNet_637841838805204305" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesNetAbstract" xlink:label="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838805194303" xlink:to="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment" xlink:label="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" xlink:to="us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment_637841838805204305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" xlink:to="us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_637841838805204305" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="us-gaap_DeferredIncomeTaxLiabilities_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" xlink:to="us-gaap_DeferredIncomeTaxLiabilities_637841838805204305" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities" xlink:label="us-gaap_DeferredTaxLiabilities_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DeferredTaxLiabilitiesNetAbstract_637841838805204305" xlink:to="us-gaap_DeferredTaxLiabilities_637841838805204305" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails" xlink:type="extended" xlink:title="41105 - Disclosure - Income taxes - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_637050102265703613" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable_637841838805204305" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract_637050102265703613" xlink:to="us-gaap_StatementTable_637841838805204305" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="us-gaap_IncomeTaxAuthorityAxis_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805204305" xlink:to="us-gaap_IncomeTaxAuthorityAxis_637841838805214306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="us-gaap_IncomeTaxAuthorityDomain_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityAxis_637841838805214306" xlink:to="us-gaap_IncomeTaxAuthorityDomain_637841838805214306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="us-gaap_DomesticCountryMember_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityDomain_637841838805214306" xlink:to="us-gaap_DomesticCountryMember_637841838805214306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="us-gaap_StateAndLocalJurisdictionMember_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityDomain_637841838805214306" xlink:to="us-gaap_StateAndLocalJurisdictionMember_637841838805214306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationAxis" xlink:label="us-gaap_DisposalGroupClassificationAxis_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805204305" xlink:to="us-gaap_DisposalGroupClassificationAxis_637841838805214306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisposalGroupClassificationDomain" xlink:label="us-gaap_DisposalGroupClassificationDomain_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationAxis_637841838805214306" xlink:to="us-gaap_DisposalGroupClassificationDomain_637841838805214306" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDiscontinuedOperationsMember" xlink:label="us-gaap_SegmentDiscontinuedOperationsMember_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisposalGroupClassificationDomain_637841838805214306" xlink:to="us-gaap_SegmentDiscontinuedOperationsMember_637841838805214306" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable_637841838805204305" xlink:to="us-gaap_StatementLineItems_637841838805214306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="us-gaap_OperatingLossCarryforwards_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems_637841838805214306" xlink:to="us-gaap_OperatingLossCarryforwards_637841838805214306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureEarningsPerShareDetails" xlink:type="extended" xlink:title="41201 - Disclosure - Earnings per share (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_1043" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_IncomeLossFromContinuingOperations_637841838805214306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPreferredStock" xlink:label="us-gaap_DividendsPreferredStock_637841838805214306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_DividendsPreferredStock_637841838805214306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic" xlink:label="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic_637841838805224306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838805224306" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic_637841838805224306" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_637841838805224306" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock" xlink:label="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock_637841838805224306" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants" xlink:label="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants_637841838805224306" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1043" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_637841838805224306" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureDividendsDetails" xlink:type="extended" xlink:title="41301 - Disclosure - Dividends (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsAbstract" xlink:label="us-gaap_DividendsAbstract_637050102265923039" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DividendsPerShareDeclared" xlink:label="cwco_DividendsPerShareDeclared_637841838805224306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DividendsAbstract_637050102265923039" xlink:to="cwco_DividendsPerShareDeclared_637841838805224306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationDetails" xlink:type="extended" xlink:title="41401 - Disclosure - Segment information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_1063" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1063" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805234306" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805234306" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838805234306" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838805234306" xlink:to="us-gaap_SegmentDomain_637841838805234306" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805234306" xlink:to="cwco_SegmentRetailMember_637841838805234306" order="1" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805234306" xlink:to="cwco_BulkMember_637841838805234306" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805234306" xlink:to="cwco_ServicesMember_637841838805234306" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805234306" xlink:to="cwco_ManufacturingUnitsMember_637841838805234306" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805234306" xlink:to="us-gaap_SegmentReportingInformationLineItems_637841838805234306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_NumberOfReportableSegments_637841838805234306" order="1" use="optional" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_Revenues_637841838805234306" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_637841838805234306" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_CostOfRevenue_637841838805234306" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_GrossProfit_637841838805244308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_GeneralAndAdministrativeExpense_637841838805244308" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges" xlink:label="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges_637841838805244308" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="9" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_OperatingIncomeLoss_637841838805244308" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_NonoperatingIncomeExpense_637841838805244308" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_637841838805244308" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeTaxExpenseBenefit_637841838805244308" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/presentationGuidance" priority="8" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest_637841838805244308" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity" xlink:label="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity_637841838805244308" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations" xlink:label="us-gaap_IncomeLossFromContinuingOperations_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeLossFromContinuingOperations_637841838805244308" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax" xlink:label="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838805244308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax_637841838805244308" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_NetIncomeLoss_637841838805254309" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_AccountsReceivableNetCurrent_637841838805254309" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InventoryCurrentAndNoncurrent" xlink:label="cwco_InventoryCurrentAndNoncurrent_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="cwco_InventoryCurrentAndNoncurrent_637841838805254309" order="17" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_637841838805254309" order="18" use="optional" preferredLabel="http://www.xbrl.org/2003/role/definitionGuidance" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ConstructionInProgress" xlink:label="cwco_ConstructionInProgress_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="cwco_ConstructionInProgress_637841838805254309" order="19" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_637841838805254309" order="20" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_Goodwill_637841838805254309" order="21" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AssetsContinuedOperation" xlink:label="cwco_AssetsContinuedOperation_637841838805254309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="cwco_AssetsContinuedOperation_637841838805254309" order="22" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation" xlink:label="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_637841838805264309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation_637841838805264309" order="23" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets_637841838805264309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805234306" xlink:to="us-gaap_Assets_637841838805264309" order="24" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="5" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails" xlink:type="extended" xlink:title="41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract_637050102266072636" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract_637050102266072636" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805334308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805334308" xlink:to="srt_StatementGeographicalAxis_637841838805334308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis_637841838805334308" xlink:to="srt_SegmentGeographicalDomain_637841838805334308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="country_KY_637841838805334308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="country_BS_637841838805334308" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="country_US_637841838805334308" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_VG" xlink:label="country_VG_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="country_VG_637841838805334308" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WaterAndSewerageCorporationMember" xlink:label="cwco_WaterAndSewerageCorporationMember_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="cwco_WaterAndSewerageCorporationMember_637841838805334308" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OneCustomerMember" xlink:label="cwco_OneCustomerMember_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805334308" xlink:to="cwco_OneCustomerMember_637841838805334308" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805334308" xlink:to="us-gaap_SegmentReportingInformationLineItems_637841838805334308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues_637841838805334308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805334308" xlink:to="us-gaap_Revenues_637841838805334308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EntityWideRevenuesMajorCustomerPercentage" xlink:label="cwco_EntityWideRevenuesMajorCustomerPercentage_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805334308" xlink:to="cwco_EntityWideRevenuesMajorCustomerPercentage_637841838805344311" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails" xlink:type="extended" xlink:title="41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract_637050102266132501" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract_637050102266132501" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805344311" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805344311" xlink:to="srt_StatementGeographicalAxis_637841838805344311" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis_637841838805344311" xlink:to="srt_SegmentGeographicalDomain_637841838805344311" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805344311" xlink:to="country_KY_637841838805344311" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_BS" xlink:label="country_BS_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805344311" xlink:to="country_BS_637841838805344311" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_US" xlink:label="country_US_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_SegmentGeographicalDomain_637841838805344311" xlink:to="country_US_637841838805344311" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805344311" xlink:to="us-gaap_SegmentReportingInformationLineItems_637841838805344311" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_637841838805344311" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805344311" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_637841838805344311" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:type="extended" xlink:title="41404 - Disclosure - Segment information - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_1123" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_1123" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805354309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805354309" xlink:to="us-gaap_StatementBusinessSegmentsAxis_637841838805354309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentDomain" xlink:label="us-gaap_SegmentDomain_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementBusinessSegmentsAxis_637841838805354309" xlink:to="us-gaap_SegmentDomain_637841838805354309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_SegmentRetailMember" xlink:label="cwco_SegmentRetailMember_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805354309" xlink:to="cwco_SegmentRetailMember_637841838805354309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BulkMember" xlink:label="cwco_BulkMember_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805354309" xlink:to="cwco_BulkMember_637841838805354309" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ServicesMember" xlink:label="cwco_ServicesMember_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805354309" xlink:to="cwco_ServicesMember_637841838805354309" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManufacturingUnitsMember" xlink:label="cwco_ManufacturingUnitsMember_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentDomain_637841838805354309" xlink:to="cwco_ManufacturingUnitsMember_637841838805354309" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="us-gaap_SegmentReportingInformationLineItems_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_637841838805354309" xlink:to="us-gaap_SegmentReportingInformationLineItems_637841838805354309" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingInformationLineItems_637841838805354309" xlink:to="us-gaap_DepreciationDepletionAndAmortization_637841838805354309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails" xlink:type="extended" xlink:title="41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102266212246" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102266212246" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805354309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805354309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805354309" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805354309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805354309" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ElectricityMember" xlink:label="us-gaap_ElectricityMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="us-gaap_ElectricityMember_637841838805364308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepreciationMember" xlink:label="cwco_DepreciationMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_DepreciationMember_637841838805364308" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_FuelOilMember" xlink:label="cwco_FuelOilMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_FuelOilMember_637841838805364308" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeeCostsMember" xlink:label="cwco_EmployeeCostsMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_EmployeeCostsMember_637841838805364308" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MaintenanceMember" xlink:label="us-gaap_MaintenanceMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="us-gaap_MaintenanceMember_637841838805364308" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RoyaltiesMember" xlink:label="cwco_RoyaltiesMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_RoyaltiesMember_637841838805364308" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InsuranceMember" xlink:label="cwco_InsuranceMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_InsuranceMember_637841838805364308" order="7" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_MaterialsMember" xlink:label="cwco_MaterialsMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="cwco_MaterialsMember_637841838805364308" order="8" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherExpenseMember" xlink:label="us-gaap_OtherExpenseMember_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805364308" xlink:to="us-gaap_OtherExpenseMember_637841838805364308" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805354309" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805364308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfRevenue" xlink:label="us-gaap_CostOfRevenue_637841838805364308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805364308" xlink:to="us-gaap_CostOfRevenue_637841838805364308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails" xlink:type="extended" xlink:title="41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details)">
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102266232201" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract_637050102266232201" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805374308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805374308" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805374308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis_637841838805374308" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeeCostsMember" xlink:label="cwco_EmployeeCostsMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_EmployeeCostsMember_637841838805374308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_InsuranceMember" xlink:label="cwco_InsuranceMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_InsuranceMember_637841838805374308" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ProfessionalsFeeMember" xlink:label="cwco_ProfessionalsFeeMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_ProfessionalsFeeMember_637841838805374308" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DirectorsFeesAndExpensesMember" xlink:label="cwco_DirectorsFeesAndExpensesMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_DirectorsFeesAndExpensesMember_637841838805374308" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DepreciationMember" xlink:label="cwco_DepreciationMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_DepreciationMember_637841838805374308" order="5" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AmortizationOfIntangiblesMember" xlink:label="cwco_AmortizationOfIntangiblesMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_AmortizationOfIntangiblesMember_637841838805374308" order="6" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_OtherCreditDeviceMember" xlink:label="cwco_OtherCreditDeviceMember_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain_637841838805374308" xlink:to="cwco_OtherCreditDeviceMember_637841838805374308" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems" xlink:label="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable_637841838805374308" xlink:to="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805374308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense_637841838805374308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems_637841838805374308" xlink:to="us-gaap_GeneralAndAdministrativeExpense_637841838805374308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails" xlink:type="extended" xlink:title="41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266272102" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266272102" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_637841838805384308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266272102" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_637841838805384308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266272102" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_637841838805384308" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266272102" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_637841838805384308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails" xlink:type="extended" xlink:title="41602 - Disclosure - Stock-based compensation - Stock option activity (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266302039" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266302039" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805384308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805384308" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805384308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805384308" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805384308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember_637841838805384308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805384308" xlink:to="us-gaap_EmployeeStockOptionMember_637841838805384308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805384308" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_637841838805394330" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_637841838805394330" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_637841838805394330" order="3" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_637841838805394330" order="4" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6378418388053943301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6378418388053943301" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_637841838805394330" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_637841838805394330" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_637841838805394330" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_637841838805394330" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_6378418388053943301" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_6378418388053943301" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_637841838805394330" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805394330" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_637841838805394330" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails" xlink:type="extended" xlink:title="41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266411739" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266411739" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_637841838805404310" xlink:to="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_BelowMarketPriceMember" xlink:label="cwco_BelowMarketPriceMember_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_637841838805404310" xlink:to="cwco_BelowMarketPriceMember_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AtMarketPriceMember" xlink:label="cwco_AtMarketPriceMember_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_637841838805404310" xlink:to="cwco_AtMarketPriceMember_637841838805404310" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AboveMarketPriceMember" xlink:label="cwco_AboveMarketPriceMember_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_637841838805404310" xlink:to="cwco_AboveMarketPriceMember_637841838805404310" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" xlink:to="srt_TitleOfIndividualAxis_637841838805404310" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis_637841838805404310" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ManagementEmployeesMember" xlink:label="cwco_ManagementEmployeesMember_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain_637841838805404310" xlink:to="cwco_ManagementEmployeesMember_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmployeesMember" xlink:label="cwco_EmployeesMember_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain_637841838805404310" xlink:to="cwco_EmployeesMember_637841838805404310" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" xlink:to="us-gaap_StatementEquityComponentsAxis_637841838805404310" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_637841838805404310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis_637841838805404310" xlink:to="us-gaap_EquityComponentDomain_637841838805404310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockMember" xlink:label="us-gaap_PreferredStockMember_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain_637841838805404310" xlink:to="us-gaap_PreferredStockMember_637841838805414425" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain_637841838805404310" xlink:to="us-gaap_CommonStockMember_637841838805414425" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805404310" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805414425" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805414425" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_637841838805414425" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805414425" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_637841838805414425" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureStockBasedCompensationDetails" xlink:type="extended" xlink:title="41604 - Disclosure - Stock-based compensation (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266521425" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_637050102266521425" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" xlink:to="us-gaap_StatementClassOfStockAxis_637841838805414425" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis_637841838805414425" xlink:to="us-gaap_ClassOfStockDomain_637841838805414425" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RedeemablePreferredStockMember" xlink:label="us-gaap_RedeemablePreferredStockMember_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfStockDomain_637841838805414425" xlink:to="us-gaap_RedeemablePreferredStockMember_637841838805414425" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeAxis" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805414425" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805414425" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OptionIndexedToIssuersEquityTypeDomain" xlink:label="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeAxis_637841838805414425" xlink:to="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805424308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="us-gaap_EmployeeStockOptionMember_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805424308" xlink:to="us-gaap_EmployeeStockOptionMember_637841838805424308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EquityIncentivePlan2008Member" xlink:label="cwco_EquityIncentivePlan2008Member_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OptionIndexedToIssuersEquityTypeDomain_637841838805424308" xlink:to="cwco_EquityIncentivePlan2008Member_637841838805424308" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" xlink:to="us-gaap_AwardTypeAxis_637841838805424308" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis_637841838805424308" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommonStockOptionsMember" xlink:label="cwco_CommonStockOptionsMember_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" xlink:to="cwco_CommonStockOptionsMember_637841838805424308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonExecutiveDirectorsSharePlanMember" xlink:label="cwco_NonExecutiveDirectorsSharePlanMember_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" xlink:to="cwco_NonExecutiveDirectorsSharePlanMember_637841838805424308" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonperformancebasedGrantsMember" xlink:label="cwco_NonperformancebasedGrantsMember_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" xlink:to="cwco_NonperformancebasedGrantsMember_637841838805424308" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PerformancebasedGrantsMember" xlink:label="cwco_PerformancebasedGrantsMember_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_637841838805424308" xlink:to="cwco_PerformancebasedGrantsMember_637841838805424308" order="4" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_637841838805414425" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_637841838805424308" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod_637841838805424308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_637841838805424308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_637841838805424308" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation_637841838805434309" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax" xlink:label="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax_637841838805434309" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares_637841838805434309" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue_637841838805434309" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm" xlink:label="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm_637841838805434309" order="8" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_637841838805434309" order="9" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_637841838805434309" order="10" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_637841838805434309" order="11" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_PreferredStockValue_637841838805434309" order="12" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod" xlink:label="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_637841838805434309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod_637841838805434309" order="13" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioPreferredShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioPreferredShares_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_StockholdersEquityNoteConversionRatioPreferredShares_637841838805444308" order="14" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_StockholdersEquityNoteConversionRatioCommonShares" xlink:label="cwco_StockholdersEquityNoteConversionRatioCommonShares_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_StockholdersEquityNoteConversionRatioCommonShares_637841838805444308" order="15" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock" xlink:label="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock_637841838805444308" order="16" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised" xlink:label="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised_637841838805444308" order="17" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesIssuedForServices" xlink:label="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_StockIssuedDuringPeriodSharesIssuedForServices_637841838805444308" order="18" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_637841838805444308" order="19" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="us-gaap_ShareBasedCompensation_637841838805444308" order="20" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_ClosingPriceOfCommonShares" xlink:label="cwco_ClosingPriceOfCommonShares_637841838805444308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_637841838805424308" xlink:to="cwco_ClosingPriceOfCommonShares_637841838805444308" order="21" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureRetirementBenefitsDetails" xlink:type="extended" xlink:title="41701 - Disclosure - Retirement benefits (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="us-gaap_CompensationAndRetirementDisclosureAbstract_637050102266651077" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable" xlink:label="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CompensationAndRetirementDisclosureAbstract_637050102266651077" xlink:to="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanAxis" xlink:label="cwco_RetirementPlanAxis_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" xlink:to="cwco_RetirementPlanAxis_637841838805454307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_RetirementPlanDomain" xlink:label="cwco_RetirementPlanDomain_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_RetirementPlanAxis_637841838805454307" xlink:to="cwco_RetirementPlanDomain_637841838805454307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2021/country-2021.xsd#country_KY" xlink:label="country_KY_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_RetirementPlanDomain_637841838805454307" xlink:to="country_KY_637841838805454307" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_FL" xlink:label="stpr_FL_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_RetirementPlanDomain_637841838805454307" xlink:to="stpr_FL_637841838805454307" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd#stpr_CA" xlink:label="stpr_CA_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_RetirementPlanDomain_637841838805454307" xlink:to="stpr_CA_637841838805454307" order="3" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_637841838805454307" order="2" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_637841838805454307" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_637841838805454307" order="1" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember" xlink:label="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain_637841838805454307" xlink:to="cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_637841838805454307" order="1" use="optional" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838805454307" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" xlink:to="srt_RangeAxis_637841838805454307" order="3" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838805454307" xlink:to="srt_RangeMember_637841838805464308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838805464308" xlink:to="srt_MaximumMember_637841838805464308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedBenefitPlanDisclosureLineItems" xlink:label="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable_637841838805454307" xlink:to="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionExpense" xlink:label="us-gaap_PensionExpense_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" xlink:to="us-gaap_PensionExpense_637841838805464308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_637841838805464308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount" xlink:label="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" xlink:to="us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount_637841838805464308" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_637841838805464308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DefinedBenefitPlanDisclosureLineItems_637841838805464308" xlink:to="us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_637841838805464308" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails" xlink:type="extended" xlink:title="41801 - Disclosure - Financial instruments (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266690973" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805464308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266690973" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805464308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByAssetClassAxis" xlink:label="us-gaap_FairValueByAssetClassAxis_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805464308" xlink:to="us-gaap_FairValueByAssetClassAxis_637841838805474309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:label="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByAssetClassAxis_637841838805474309" xlink:to="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_637841838805474309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CertificatesOfDepositMember" xlink:label="us-gaap_CertificatesOfDepositMember_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_637841838805474309" xlink:to="us-gaap_CertificatesOfDepositMember_637841838805474309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="us-gaap_FairValueByFairValueHierarchyLevelAxis_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805464308" xlink:to="us-gaap_FairValueByFairValueHierarchyLevelAxis_637841838805474309" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueByFairValueHierarchyLevelAxis_637841838805474309" xlink:to="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_637841838805474309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="us-gaap_FairValueInputsLevel2Member_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_637841838805474309" xlink:to="us-gaap_FairValueInputsLevel2Member_637841838805474309" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="us-gaap_FairValueInputsLevel3Member_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementsFairValueHierarchyDomain_637841838805474309" xlink:to="us-gaap_FairValueInputsLevel3Member_637841838805474309" order="2" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805464308" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805474309" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract" xlink:label="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805474309" xlink:to="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract_637841838805474309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract_637841838805474309" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_637841838805474309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_637841838805474309" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_637841838805474309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838805474309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract_637841838805474309" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue_637841838805474309" order="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails" xlink:type="extended" xlink:title="41802 - Disclosure - Financial instruments - Level 3 activity (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266710919" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:label="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266710919" xlink:to="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_637841838805484310" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_637841838805484310" xlink:to="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_637841838805484310" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_637841838805484310" xlink:to="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings_637841838805484310" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs" xlink:label="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_6378418388054843101" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_637841838805484310" xlink:to="us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs_6378418388054843101" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails" xlink:type="extended" xlink:title="41803 - Disclosure - Financial instruments - Additional Information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266680998" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract_637050102266680998" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805484310" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805484310" xlink:to="srt_RangeAxis_637841838805484310" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember" xlink:label="srt_RangeMember_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis_637841838805484310" xlink:to="srt_RangeMember_637841838805484310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember_637841838805484310" xlink:to="srt_MinimumMember_637841838805484310" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805484310" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_637841838805484310" xlink:to="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805484310" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue" xlink:label="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805484310" xlink:to="cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue_637841838805494308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies" xlink:label="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_637841838805484310" xlink:to="cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies_637841838805494308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails" xlink:type="extended" xlink:title="41901 - Disclosure - Commitments and contingencies (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_140" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesTable" xlink:label="cwco_CommitmentsAndContingenciesTable_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_140" xlink:to="cwco_CommitmentsAndContingenciesTable_637841838805494308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesTable_637841838805494308" xlink:to="srt_MajorCustomersAxis_637841838805494308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis_637841838805494308" xlink:to="srt_NameOfMajorCustomerDomain_637841838805494308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_WSCMember" xlink:label="cwco_WSCMember_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_NameOfMajorCustomerDomain_637841838805494308" xlink:to="cwco_WSCMember_637841838805494308" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CommitmentsAndContingenciesLineItems" xlink:label="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesTable_637841838805494308" xlink:to="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="2" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_EmploymentAgreementBaseAnnualSalaries" xlink:label="cwco_EmploymentAgreementBaseAnnualSalaries_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="cwco_EmploymentAgreementBaseAnnualSalaries_637841838805494308" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NumberOfReportingUnits" xlink:label="us-gaap_NumberOfReportingUnits_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="us-gaap_NumberOfReportingUnits_637841838805494308" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfRevenue" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfRevenue_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfRevenue_637841838805494308" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit" xlink:label="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit_637841838805494308" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit_637841838805494308" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount" xlink:label="us-gaap_LongTermPurchaseCommitmentAmount_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="us-gaap_LongTermPurchaseCommitmentAmount_637841838805504323" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" priority="1" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="us-gaap_AccountsReceivableNet_637841838805504323" order="6" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="cwco_CommitmentsAndContingenciesLineItems_637841838805494308" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_637841838805504323" order="7" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails" xlink:type="extended" xlink:title="42001 - Disclosure - Related party transactions (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsAbstract" xlink:label="us-gaap_RelatedPartyTransactionsAbstract" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable" xlink:label="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsAbstract" xlink:to="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_637841838805504323" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_637841838805504323" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_637841838805504323" order="1" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyDomain" xlink:label="us-gaap_RelatedPartyDomain_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_637841838805504323" xlink:to="us-gaap_RelatedPartyDomain_637841838805504323" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_PercWaterCorporationMember" xlink:label="cwco_PercWaterCorporationMember_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyDomain_637841838805504323" xlink:to="cwco_PercWaterCorporationMember_637841838805504323" order="1" use="optional" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionLineItems" xlink:label="us-gaap_RelatedPartyTransactionLineItems_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable_637841838805504323" xlink:to="us-gaap_RelatedPartyTransactionLineItems_637841838805504323" order="2" use="optional" priority="2" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionLineItems_637841838805504323" xlink:to="us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty_637841838805504323" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableRelatedPartiesCurrent" xlink:label="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionLineItems_637841838805504323" xlink:to="us-gaap_AccountsPayableRelatedPartiesCurrent_637841838805504323" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty" xlink:label="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_637841838805504323" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RelatedPartyTransactionLineItems_637841838805504323" xlink:to="us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty_637841838805504323" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </presentationLink>
  <presentationLink xlink:role="http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails" xlink:type="extended" xlink:title="42101 - Disclosure - Supplemental disclosure of cash flow information (Details)">
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalCashFlowElementsAbstract" xlink:label="us-gaap_SupplementalCashFlowElementsAbstract_637050102267528731" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract_637050102267528731" xlink:to="us-gaap_InterestPaidNet_637841838805514309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowElementsAbstract_637050102267528731" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsPayableCurrentAndNoncurrent" xlink:label="us-gaap_DividendsPayableCurrentAndNoncurrent_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" xlink:to="us-gaap_DividendsPayableCurrentAndNoncurrent_637841838805514309" order="1" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="3" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment" xlink:label="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" xlink:to="cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment_637841838805514309" order="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="cwco-20211231.xsd#cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet" xlink:label="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" xlink:to="cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet_637841838805514309" order="3" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_637841838805514309" order="4" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" priority="4" />
    <loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction" xlink:label="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_637841838805514309" />
    <presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract_637841838805514309" xlink:to="us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction_637841838805514309" order="5" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" priority="4" />
  </presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770811080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Mar. 24, 2022</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DocumentAndEntityInformationAbstract', window );"><strong>Document and Entity Information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">0-25248<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">CONSOLIDATED WATER CO.&#160;LTD.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">KY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">98-0619652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">Regatta Office Park<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Windward Three, 4th Floor, West Bay Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine3', window );">Entity Address, Address Line Three</a></td>
<td class="text">P.O.&#160;Box 1114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Grand Cayman<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">KY1-1102<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCountry', window );">Entity Address, Country</a></td>
<td class="text">KY<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">345<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">945-4277<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CWCO<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Marcum LLP<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">688<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">West Palm Beach, Florida<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15,267,104<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000928340<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 169,038,813<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_DocumentAndEntityInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Document and Entity Information [Abstract]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DocumentAndEntityInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>PCAOB issued Audit Firm Identifier</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorFirmId</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:nonemptySequenceNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorLocation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AuditorName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:internationalNameItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentAnnualReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</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_EntityAddressAddressLine3">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 3 such as an Office Park</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine3</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCountry">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>ISO 3166-1 alpha-2 country code.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCountry</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:countryCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityPublicFloat</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityVoluntaryFilers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityWellKnownSeasonedIssuer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_IcfrAuditorAttestationFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770433032">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 40,358,059<span></span>
</td>
<td class="nump">$ 43,794,150<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CertificatesOfDepositAtCarryingValue', window );">Certificate of deposit</a></td>
<td class="nump">2,500,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">27,349,307<span></span>
</td>
<td class="nump">21,483,976<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventory</a></td>
<td class="nump">2,504,832<span></span>
</td>
<td class="nump">3,214,178<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">2,558,822<span></span>
</td>
<td class="nump">2,412,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="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">489,961<span></span>
</td>
<td class="nump">516,521<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current assets of discontinued operations</a></td>
<td class="nump">1,173,741<span></span>
</td>
<td class="nump">1,511,099<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">76,934,722<span></span>
</td>
<td class="nump">72,932,206<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">52,946,539<span></span>
</td>
<td class="nump">57,687,984<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgress', window );">Construction in progress</a></td>
<td class="nump">710,863<span></span>
</td>
<td class="nump">440,384<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNoncurrent', window );">Inventory, noncurrent</a></td>
<td class="nump">4,733,010<span></span>
</td>
<td class="nump">4,506,842<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestments', window );">Investment in OC-BVI</a></td>
<td class="nump">1,715,905<span></span>
</td>
<td class="nump">2,092,146<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">10,425,013<span></span>
</td>
<td class="nump">13,325,013<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">3,401,666<span></span>
</td>
<td class="nump">4,148,333<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">2,681,137<span></span>
</td>
<td class="nump">1,329,561<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Net asset arising from put/call options</a></td>
<td class="nump">128,000<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">2,204,013<span></span>
</td>
<td class="nump">1,926,594<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent', window );">Long-term assets of discontinued operations</a></td>
<td class="nump">21,146,186<span></span>
</td>
<td class="nump">21,166,489<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">177,027,054<span></span>
</td>
<td class="nump">179,555,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="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable, accrued expenses and other current liabilities</a></td>
<td class="nump">2,831,925<span></span>
</td>
<td class="nump">2,740,191<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableRelatedPartiesCurrent', window );">Accounts payable - related parties</a></td>
<td class="nump">163,947<span></span>
</td>
<td class="nump">200,558<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedEmployeeBenefitsCurrent', window );">Accrued compensation</a></td>
<td class="nump">1,435,542<span></span>
</td>
<td class="nump">1,434,106<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsPayableCurrent', window );">Dividends payable</a></td>
<td class="nump">1,320,572<span></span>
</td>
<td class="nump">1,300,022<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current maturities of operating leases</a></td>
<td class="nump">592,336<span></span>
</td>
<td class="nump">455,788<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Current portion of long-term debt</a></td>
<td class="nump">62,489<span></span>
</td>
<td class="nump">42,211<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="nump">513,878<span></span>
</td>
<td class="nump">461,870<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeCurrent', window );">Deferred revenue</a></td>
<td class="nump">583,646<span></span>
</td>
<td class="nump">115,936<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current liabilities of discontinued operations</a></td>
<td class="nump">182,322<span></span>
</td>
<td class="nump">188,434<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">7,686,657<span></span>
</td>
<td class="nump">6,939,116<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt, noncurrent</a></td>
<td class="nump">152,038<span></span>
</td>
<td class="nump">126,338<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Deferred tax liabilities</a></td>
<td class="nump">1,236,723<span></span>
</td>
<td class="nump">1,440,809<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Noncurrent operating leases</a></td>
<td class="nump">2,137,394<span></span>
</td>
<td class="nump">982,076<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Net liability arising from put/call options</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">690,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">141,000<span></span>
</td>
<td class="nump">362,165<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent', window );">Long-term liabilities of discontinued operations</a></td>
<td class="nump">7,819<span></span>
</td>
<td class="nump">2,499<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">11,361,631<span></span>
</td>
<td class="nump">10,543,003<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies</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="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Consolidated Water Co. Ltd. stockholders' equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 28,635 and 31,068 shares, respectively</a></td>
<td class="nump">17,181<span></span>
</td>
<td class="nump">18,641<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">87,812,432<span></span>
</td>
<td class="nump">86,893,486<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">60,603,056<span></span>
</td>
<td class="nump">64,910,709<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total Consolidated Water Co. Ltd. stockholders' equity</a></td>
<td class="nump">157,578,885<span></span>
</td>
<td class="nump">160,909,046<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Non-controlling interests</a></td>
<td class="nump">8,086,538<span></span>
</td>
<td class="nump">8,103,503<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total equity</a></td>
<td class="nump">165,665,423<span></span>
</td>
<td class="nump">169,012,549<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and equity</a></td>
<td class="nump">177,027,054<span></span>
</td>
<td class="nump">179,555,552<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember', window );">Common Class A [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Consolidated Water Co. Ltd. stockholders' equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock value</a></td>
<td class="nump">9,146,216<span></span>
</td>
<td class="nump">9,086,210<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember', window );">Common Class B [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Consolidated Water Co. Ltd. stockholders' equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock value</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_cwco_ConstructionInProgress">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ConstructionInProgress</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AccountsPayableRelatedPartiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount for accounts payable to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://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> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: 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 http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br><br>Reference 4: 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 http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableRelatedPartiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedEmployeeBenefitsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedEmployeeBenefitsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 2: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2473-110228<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 7: 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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CertificatesOfDepositAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A savings certificate entitling the Entity (that is, bearer) to receive interest at an established maturity date, based upon a fixed interest rate.  A certificate of deposit may be issued in any denomination. Certificates of deposit are generally issued by commercial banks and, therefore, insured by the FDIC (up to the prescribed limit).  Certificates of deposit generally restrict holders from withdrawing funds on demand without the incurrence of penalties.  Generally, only certificates of deposit with original maturities of three months or less qualify as cash equivalents. Original maturity means original maturity to the entity holding the investment. As a related example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CertificatesOfDepositAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<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.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<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 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130533-203044<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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<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 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130532-203044<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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredIncomeCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income excluding obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 25<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=28183603&amp;loc=d3e692-112598<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<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(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<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(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<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 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2510-110228<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 6: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DividendsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This item represents the carrying amount on the entity's balance sheet of its investment in common stock of an equity method investee. This is not an indicator of the fair value of the investment, rather it is the initial cost adjusted for the entity's share of earnings and losses of the investee, adjusted for any distributions (dividends) and other than temporary impairment (OTTI) losses recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.12)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2473-110228<br><br>Reference 6: 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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 7: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 4: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2510-110228<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568740-111683<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (a)(3)(iii)(03)<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770708632">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONSOLIDATED BALANCE SHEETS (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Redeemable preferred stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.60<span></span>
</td>
<td class="nump">$ 0.60<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Redeemable preferred stock, authorized</a></td>
<td class="nump">200,000<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Redeemable preferred stock, issued</a></td>
<td class="nump">28,635<span></span>
</td>
<td class="nump">31,068<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Redeemable preferred stock, outstanding</a></td>
<td class="nump">28,635<span></span>
</td>
<td class="nump">31,068<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember', window );">Common Class A [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.60<span></span>
</td>
<td class="nump">$ 0.60<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, authorized</a></td>
<td class="nump">24,655,000<span></span>
</td>
<td class="nump">24,655,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, issued</a></td>
<td class="nump">15,243,693<span></span>
</td>
<td class="nump">15,143,683<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, outstanding</a></td>
<td class="nump">15,243,693<span></span>
</td>
<td class="nump">15,143,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="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember', window );">Common Class B [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.60<span></span>
</td>
<td class="nump">$ 0.60<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, authorized</a></td>
<td class="nump">145,000<span></span>
</td>
<td class="nump">145,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, issued</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_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=SL123496158-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassAMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonClassBMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772966536">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF INCOME - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>CONSOLIDATED STATEMENTS OF INCOME</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 66,863,502<span></span>
</td>
<td class="nump">$ 72,628,126<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue (including purchases from related parties of $437,857 in 2021 and $1,349,331 in 2020)</a></td>
<td class="nump">43,356,311<span></span>
</td>
<td class="nump">45,859,671<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">23,507,191<span></span>
</td>
<td class="nump">26,768,455<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses (including purchases from related parties of $77.190 in 2021 and $0 in 2020)</a></td>
<td class="nump">18,350,359<span></span>
</td>
<td class="nump">18,434,898<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="num">(3,145,836)<span></span>
</td>
<td class="nump">13,997<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">2,010,996<span></span>
</td>
<td class="nump">8,347,554<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income (expense):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">684,809<span></span>
</td>
<td class="nump">540,096<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="num">(10,248)<span></span>
</td>
<td class="num">(9,669)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ProfitLossFromSubsidiaries', window );">Profit-sharing income from OC-BVI</a></td>
<td class="nump">22,275<span></span>
</td>
<td class="nump">135,675<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromEquityMethodInvestments', window );">Equity in the earnings of OC-BVI</a></td>
<td class="nump">55,984<span></span>
</td>
<td class="nump">371,019<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrealizedGainLossOnDerivatives', window );">Net unrealized gain (loss) on put/call options</a></td>
<td class="nump">818,000<span></span>
</td>
<td class="num">(26,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other</a></td>
<td class="nump">52,775<span></span>
</td>
<td class="nump">71,825<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other income, net</a></td>
<td class="nump">1,623,595<span></span>
</td>
<td class="nump">1,082,946<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">3,634,591<span></span>
</td>
<td class="nump">9,430,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision (benefit) for income taxes</a></td>
<td class="num">(447,982)<span></span>
</td>
<td class="nump">86,724<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest', window );">Net income from continuing operations</a></td>
<td class="nump">4,082,573<span></span>
</td>
<td class="nump">9,343,776<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity', window );">Income from continuing operations attributable to non-controlling interests</a></td>
<td class="nump">632,915<span></span>
</td>
<td class="nump">730,005<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">3,449,658<span></span>
</td>
<td class="nump">8,613,771<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax', window );">Total loss from discontinued operations</a></td>
<td class="num">(2,574,079)<span></span>
</td>
<td class="num">(4,902,243)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">$ 875,579<span></span>
</td>
<td class="nump">$ 3,711,528<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAbstract', window );"><strong>Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicShare', window );">Continuing operations</a></td>
<td class="nump">$ 0.23<span></span>
</td>
<td class="nump">$ 0.56<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare', window );">Discontinued operations</a></td>
<td class="num">(0.17)<span></span>
</td>
<td class="num">(0.32)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per share</a></td>
<td class="nump">0.06<span></span>
</td>
<td class="nump">0.24<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare', window );">Continuing operations</a></td>
<td class="nump">0.23<span></span>
</td>
<td class="nump">0.56<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare', window );">Discontinued operations</a></td>
<td class="num">(0.17)<span></span>
</td>
<td class="num">(0.32)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per share</a></td>
<td class="nump">0.06<span></span>
</td>
<td class="nump">0.24<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareDeclared', window );">Dividends declared per common and redeemable preferred shares</a></td>
<td class="nump">$ 0.34<span></span>
</td>
<td class="nump">$ 0.34<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average number of common shares used in the determination of:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic earnings per share</a></td>
<td class="nump">15,213,816<span></span>
</td>
<td class="nump">15,119,305<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted earnings per share</a></td>
<td class="nump">15,310,145<span></span>
</td>
<td class="nump">15,223,955<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_ProfitLossFromSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This item represents the entity's share of profit or (loss) from its unconsolidated equity method investee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ProfitLossFromSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="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_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 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)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 5: 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)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 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)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare</td>
</tr>
<tr>
<td style="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_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare</td>
</tr>
<tr>
<td style="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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&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 http://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 http://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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://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 http://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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://asc.fasb.org/extlink&amp;oid=123482062&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 http://asc.fasb.org/extlink&amp;oid=125512782&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 http://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 http://asc.fasb.org/extlink&amp;oid=125512782&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 http://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 http://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 http://asc.fasb.org/extlink&amp;oid=123367319&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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-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_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 http://asc.fasb.org/extlink&amp;oid=125512782&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 http://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 http://asc.fasb.org/extlink&amp;oid=125512782&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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://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 http://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 http://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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://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 http://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 http://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 http://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 http://asc.fasb.org/extlink&amp;oid=125511455&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 http://asc.fasb.org/extlink&amp;oid=123482062&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-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_GainLossOnSalesOfAssetsAndAssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from the difference between the sale price or salvage price and the book value of an asset that was sold or retired, and gain (loss) from the write down of assets from their carrying value to fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4613673-111683<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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 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 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 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 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 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 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 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)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsPerBasicShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 2: 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.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 (a)<br> -URI http://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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 5: 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(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 (b)<br> -URI http://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 2<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<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 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 10: 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 http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 11: 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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 12: 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(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 13: 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 http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 14: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868656-224227<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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerBasicShare</td>
</tr>
<tr>
<td style="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_IncomeLossFromContinuingOperationsPerDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 5: 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 http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 6: 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 http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 8: 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(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 9: 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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 10: 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 1<br> -Subparagraph (SX 210.5-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868656-224227<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 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 12: 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 http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1252-109256<br><br>Reference 13: 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(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 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 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare</td>
</tr>
<tr>
<td style="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_IncomeLossFromDiscontinuedOperationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109227538&amp;loc=d3e44648-109337<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) for proportionate share of equity method investee's income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<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 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(13)(f))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109237563&amp;loc=d3e33749-111570<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income earned from interest bearing assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&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 http://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 http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123359005&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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_UnrealizedGainLossOnDerivatives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrealizedGainLossOnDerivatives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-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_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771866072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF INCOME (Parenthetical) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of revenue.</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty', window );">Purchases from related parties</a></td>
<td class="nump">$ 437,857<span></span>
</td>
<td class="nump">$ 1,349,331<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">General and administrative expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty', window );">Purchases from related parties</a></td>
<td class="nump">$ 77,190<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_RelatedPartyTransactionPurchasesFromRelatedParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>22
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768828952">
<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>Redeemable preferred stock [Member] </div>
<div>Preferred stock [Member]</div>
</th>
<th class="th"><div>Common stock [Member]</div></th>
<th class="th"><div>Additional paid-in capital [Member]</div></th>
<th class="th"><div>Retained earnings [Member]</div></th>
<th class="th"><div>Non controlling interests [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2019</a></td>
<td class="nump">$ 20,251<span></span>
</td>
<td class="nump">$ 9,029,765<span></span>
</td>
<td class="nump">$ 88,356,509<span></span>
</td>
<td class="nump">$ 66,352,733<span></span>
</td>
<td class="nump">$ 14,193,616<span></span>
</td>
<td class="nump">$ 177,952,874<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2019</a></td>
<td class="nump">33,751<span></span>
</td>
<td class="nump">15,049,608<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of share capital</a></td>
<td class="nump">$ 3,674<span></span>
</td>
<td class="nump">$ 50,766<span></span>
</td>
<td class="num">(54,440)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of share capital (in shares)</a></td>
<td class="nump">6,123<span></span>
</td>
<td class="nump">84,610<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities', window );">Conversion of preferred stock</a></td>
<td class="num">$ (5,679)<span></span>
</td>
<td class="nump">$ 5,679<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of preferred stock (in shares)</a></td>
<td class="num">(9,465)<span></span>
</td>
<td class="nump">9,465<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRedeemedOrCalledDuringPeriodValue', window );">Buyback of preferred stock</a></td>
<td class="num">$ (105)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(1,623)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,728)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRedeemedOrCalledDuringPeriodShares', window );">Buyback of preferred stock (in shares)</a></td>
<td class="num">(176)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,711,528<span></span>
</td>
<td class="nump">730,005<span></span>
</td>
<td class="nump">4,441,533<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Exercise of options</a></td>
<td class="nump">$ 500<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">9,661<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,161<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercise of options (in shares)</a></td>
<td class="nump">835<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Dividends declared</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,153,552)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,153,552)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PercNonControllingInterestAtAcquisitionDate', window );">Acquisition of non-controlling interests</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,579,882)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(6,820,118)<span></span>
</td>
<td class="num">(9,400,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,163,261<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,163,261<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2020</a></td>
<td class="nump">$ 18,641<span></span>
</td>
<td class="nump">$ 9,086,210<span></span>
</td>
<td class="nump">86,893,486<span></span>
</td>
<td class="nump">64,910,709<span></span>
</td>
<td class="nump">8,103,503<span></span>
</td>
<td class="nump">169,012,549<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2020</a></td>
<td class="nump">31,068<span></span>
</td>
<td class="nump">15,143,683<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of share capital</a></td>
<td class="nump">$ 5,179<span></span>
</td>
<td class="nump">$ 53,093<span></span>
</td>
<td class="num">(58,272)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Issuance of share capital (in shares)</a></td>
<td class="nump">8,632<span></span>
</td>
<td class="nump">88,488<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities', window );">Conversion of preferred stock</a></td>
<td class="num">$ (6,913)<span></span>
</td>
<td class="nump">$ 6,913<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of preferred stock (in shares)</a></td>
<td class="num">(11,522)<span></span>
</td>
<td class="nump">11,522<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRedeemedOrCalledDuringPeriodValue', window );">Buyback of preferred stock</a></td>
<td class="num">$ (989)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(15,810)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(16,799)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockRedeemedOrCalledDuringPeriodShares', window );">Buyback of preferred stock (in shares)</a></td>
<td class="num">(1,649)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">875,579<span></span>
</td>
<td class="nump">632,915<span></span>
</td>
<td class="nump">1,508,494<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Exercise of options</a></td>
<td class="nump">$ 1,263<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">15,796<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 17,059<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercise of options (in shares)</a></td>
<td class="nump">2,106<span></span>
</td>
<td class="nump">0<span></span>
</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,106<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Dividends declared</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,183,232)<span></span>
</td>
<td class="num">(649,880)<span></span>
</td>
<td class="num">$ (5,833,112)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">977,232<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">977,232<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at Dec. 31, 2021</a></td>
<td class="nump">$ 17,181<span></span>
</td>
<td class="nump">$ 9,146,216<span></span>
</td>
<td class="nump">$ 87,812,432<span></span>
</td>
<td class="nump">$ 60,603,056<span></span>
</td>
<td class="nump">$ 8,086,538<span></span>
</td>
<td class="nump">$ 165,665,423<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance (in shares) at Dec. 31, 2021</a></td>
<td class="nump">28,635<span></span>
</td>
<td class="nump">15,243,693<span></span>
</td>
<td class="text">&#160;<span></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_cwco_PercNonControllingInterestAtAcquisitionDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Perc non controlling interest at acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PercNonControllingInterestAtAcquisitionDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=122142933&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123468992&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 405<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6957935&amp;loc=d3e64057-112817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-30)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495348-112611<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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21475-112644<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The gross value of stock issued during the period upon the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodValueNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockRedeemedOrCalledDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of stock bought back by the entity at the exercise price or redemption price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRedeemedOrCalledDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-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_StockRedeemedOrCalledDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of stock bought back by the entity at the exercise price or redemption price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRedeemedOrCalledDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568740-111683<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (a)(3)(iii)(03)<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769080904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">$ 875,579<span></span>
</td>
<td class="nump">$ 3,711,528<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest', window );">Income from continuing operations attributable to non-controlling interests</a></td>
<td class="num">(632,915)<span></span>
</td>
<td class="num">(730,005)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net Income</a></td>
<td class="nump">1,508,494<span></span>
</td>
<td class="nump">4,441,533<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment', window );">Impairment loss for Mexico assets - discontinued operations</a></td>
<td class="nump">963,540<span></span>
</td>
<td class="nump">3,351,842<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortizationDiscontinuedOperations', window );">Depreciation and amortization of discontinued operations</a></td>
<td class="nump">4,545<span></span>
</td>
<td class="nump">4,545<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses', window );">Foreign currency transaction adjustment - discontinued operations</a></td>
<td class="nump">53,039<span></span>
</td>
<td class="nump">3,528<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal', window );">Loss from discontinued operations</a></td>
<td class="nump">1,552,955<span></span>
</td>
<td class="nump">1,542,328<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">6,921,233<span></span>
</td>
<td class="nump">7,406,509<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income tax benefit</a></td>
<td class="num">(204,086)<span></span>
</td>
<td class="num">(221,829)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProvisionForLoanAndLeaseLosses', window );">Provision for doubtful accounts</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">129,107<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrealizedGainLossOnDerivatives', window );">Unrealized (gain) loss on net put/call option</a></td>
<td class="num">(818,000)<span></span>
</td>
<td class="nump">26,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Compensation expense relating to stock and stock option grants</a></td>
<td class="nump">977,232<span></span>
</td>
<td class="nump">1,163,261<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets1', window );">Loss (gain) on asset dispositions and impairments, net</a></td>
<td class="nump">245,836<span></span>
</td>
<td class="num">(13,997)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries', window );">Profit-sharing and equity in earnings of OC-BVI</a></td>
<td class="num">(78,259)<span></span>
</td>
<td class="num">(506,694)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentDividendsOrDistributions', window );">Distribution of earnings from OC-BVI</a></td>
<td class="nump">454,500<span></span>
</td>
<td class="nump">318,150<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Impairment of goodwill</a></td>
<td class="nump">2,900,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="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Change in:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset', window );">Accounts receivable and contract assets</a></td>
<td class="num">(5,878,771)<span></span>
</td>
<td class="nump">2,541,096<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventory</a></td>
<td class="nump">293,254<span></span>
</td>
<td class="num">(102,551)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other assets</a></td>
<td class="num">(711,615)<span></span>
</td>
<td class="num">(629,734)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability', window );">Accounts payable(including related parties), accrued expenses and other current liabilities, and contract liabilities</a></td>
<td class="num">(112,598)<span></span>
</td>
<td class="num">(480,456)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingLiabilities', window );">Operating lease liabilities</a></td>
<td class="nump">48,593<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenue</a></td>
<td class="nump">467,710<span></span>
</td>
<td class="num">(1,700)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations', window );">Net cash provided by operating activities - continuing operations</a></td>
<td class="nump">8,587,602<span></span>
</td>
<td class="nump">18,970,938<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations', window );">Net cash used in operating activities - discontinued operations</a></td>
<td class="num">(1,621,292)<span></span>
</td>
<td class="num">(1,635,646)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by operating activities</a></td>
<td class="nump">6,966,310<span></span>
</td>
<td class="nump">17,335,292<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PaymentsToAcquireCertificatesOfDeposit', window );">Purchase of certificate of deposit</a></td>
<td class="num">(2,500,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions to property, plant and equipment and construction in progress</a></td>
<td class="num">(1,490,012)<span></span>
</td>
<td class="num">(1,728,393)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from asset dispositions</a></td>
<td class="nump">45,560<span></span>
</td>
<td class="nump">8,638<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(3,944,452)<span></span>
</td>
<td class="num">(11,119,755)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Dividends paid to common shareholders</a></td>
<td class="num">(5,151,667)<span></span>
</td>
<td class="num">(5,133,727)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock', window );">Dividends paid to preferred shareholders</a></td>
<td class="num">(11,015)<span></span>
</td>
<td class="num">(11,990)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToMinorityShareholders', window );">Dividends paid to non-controlling interests</a></td>
<td class="num">(649,880)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock', window );">Repurchase of redeemable preferred stock</a></td>
<td class="num">(16,799)<span></span>
</td>
<td class="num">(1,728)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds received from exercise of stock options</a></td>
<td class="nump">17,059<span></span>
</td>
<td class="nump">10,161<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Principal repayments on long-term debt</a></td>
<td class="num">(49,729)<span></span>
</td>
<td class="num">(32,642)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(5,862,031)<span></span>
</td>
<td class="num">(5,169,926)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect', window );">Net (decrease) increase in cash and cash equivalents</a></td>
<td class="num">(2,840,173)<span></span>
</td>
<td class="nump">1,045,611<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">43,794,150<span></span>
</td>
<td class="nump">42,071,083<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash and cash equivalents at beginning of period - discontinued operations</a></td>
<td class="nump">154,130<span></span>
</td>
<td class="nump">831,586<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Less: cash and cash equivalents at end of period - discontinued operations</a></td>
<td class="num">(750,048)<span></span>
</td>
<td class="num">(154,130)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">40,358,059<span></span>
</td>
<td class="nump">43,794,150<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-cash transactions:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-use assets obtained in exchange for new operating lease liabilities</a></td>
<td class="nump">1,852,608<span></span>
</td>
<td class="nump">299,992<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction', window );">Purchase of equipment through issuance of long-term debt</a></td>
<td class="nump">95,707<span></span>
</td>
<td class="nump">122,292<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=cwco_AerexIndustriesIncMember', window );">Aerex</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries', window );">Purchase of non-controlling interest in PERC</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(8,500,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LegalEntityAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries', window );">Purchase of non-controlling interest in PERC</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (900,000)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This items represents the entity's equity in earnings and profit sharing rights earned for the period from its unconsolidated equity method investee.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and in current liabilities classified as other and in obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services and right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PaymentsToAcquireCertificatesOfDeposit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow from purchase of certificates of deposit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PaymentsToAcquireCertificatesOfDeposit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-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 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-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 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=SL98516268-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of debt issuance costs that were incurred during a noncash or partial noncash transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4313-108586<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 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortizationDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deprecation and amortization expense attributable to property, plant and equipment and intangible assets of discontinued operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortizationDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of foreign currency translation gain (loss) in the disposal group, including discontinued operation, recognized in the statement of income as a result of the sale or complete or substantially complete liquidation of an investment in a foreign entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of gain (loss) recognized on the sale or disposal of a disposal group. Excludes discontinued operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2443-110228<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestmentDividendsOrDistributions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of distribution received from equity method investee for return on investment, classified as operating activities. Excludes distribution for return of investment, classified as investing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<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 S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 21D<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=SL94080555-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentDividendsOrDistributions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 3: 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> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities that result from activities that generate operating income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, excluding discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3521-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 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of Net Income (Loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-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_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsOfDividendsPreferredStockAndPreferenceStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to preferred shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PaymentsToAcquireAdditionalInterestInSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the purchase of noncontrolling interest during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToMinorityShareholders">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to a noncontrolling interest. Includes, but not limited to, reduction of noncontrolling interest ownership. Excludes dividends paid to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToMinorityShareholders</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cash inflows (outflows) from issuing and redeeming redeemable preferred stock; includes convertible and nonconvertible redeemable preferred stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromSaleOfPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=SL79508275-113901<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 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForLoanAndLeaseLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense related to estimated loss from loan and lease transactions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: 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.11)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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 50<br> -Paragraph 11B<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForLoanAndLeaseLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrealizedGainLossOnDerivatives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnrealizedGainLossOnDerivatives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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=cwco_AerexIndustriesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=cwco_AerexIndustriesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>24
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772780824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Principal activity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Principal activity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NatureOfOperations', window );">Principal activity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">1. Principal activity</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Consolidated Water Co. Ltd. and its subsidiaries (collectively, the &#8220;Company&#8221;) supply potable water, treat water for reuse and provide water-related products and services to customers in the Cayman Islands, The Bahamas, the United States and the British Virgin Islands. The Company produces potable water from seawater using reverse osmosis technology and sells this water to a variety of customers, including public utilities, commercial and tourist properties, residential properties and government facilities. The Company designs, builds and sells water production and water treatment infrastructure and manages water infrastructure for commercial and governmental customers. The Company also manufactures a wide range of specialized and custom water industry related products and provides design, engineering, operating and other services applicable to commercial, municipal and industrial water production, supply and treatment.</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_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NatureOfOperations</td>
</tr>
<tr>
<td style="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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-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>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772734616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Accounting policies</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">2. Accounting policies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of preparation:</b> The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Use of estimates:</b> The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Significant items subject to estimates and assumptions include the carrying value of property, plant and equipment, intangible assets, goodwill and put/call options. Actual results could differ significantly from such estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of consolidation:</b> The accompanying consolidated financial statements include the accounts of the Company&#8217;s (i)&#160;wholly-owned subsidiaries, Aerex Industries,&#160;Inc. (&#8220;Aerex&#8221;), Aquilex,&#160;Inc. (&#8220;Aquilex&#8221;), Cayman Water Company Limited (&#8220;Cayman Water&#8221;), Ocean Conversion (Cayman) Limited (&#8220;OC-Cayman&#8221;), DesalCo Limited (&#8220;DesalCo&#8221;), Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), Consolidated Water U.S. Holdings,&#160;Inc. (&#8220;CW-Holdings&#8221;); and (ii)&#160;majority-owned subsidiaries Consolidated Water (Bahamas)&#160;Ltd. (&#8220;CW-Bahamas&#8221;), N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;), and PERC Water Corporation ("PERC"). The Company&#8217;s investment in its affiliate Ocean Conversion (BVI)&#160;Ltd. (&#8220;OC-BVI&#8221;) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">On January 24, 2020, as a result of CW-Holdings' exercise of a call option, CW-Holdings purchased the remaining&#160;</span><span style="background:#ffffff;">49%</span><span style="background:#ffffff;"> ownership interest in Aerex for </span><span style="background:#ffffff;">$8,500,000</span><span style="background:#ffffff;">&#160;in cash. After giving effect to this purchase, CW-Holdings owns&#160;</span><span style="background:#ffffff;">100%</span><span style="background:#ffffff;"> of the outstanding capital stock of Aerex. On August 11, 2020, CW-Holdings purchased an additional&#160;</span><span style="background:#ffffff;">10%</span><span style="background:#ffffff;"> of the ownership of PERC for </span><span style="background:#ffffff;">$900,000</span><span style="background:#ffffff;">, increasing its ownership of this subsidiary to&#160;</span><span style="background:#ffffff;">61%</span><span style="background:#ffffff;">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Foreign currency:</b>&#160;The Company&#8217;s reporting currency is the United States dollar (&#8220;US$&#8221;). The functional currency of the Company and its subsidiaries (other than NSC, AdR and CW-Cooperatief) is the currency for each respective country. The functional currency for NSC, AdR and CW-Cooperatief is the US$. NSC and AdR conduct business in US$ and Mexican pesos and CW-Cooperatief conducts business in US$ and euros. The exchange rates for the Cayman Islands dollar and the Bahamian dollar are fixed to the US$. The exchange rates for conversion of Mexican pesos and euros into US$ vary based upon market conditions. Net foreign currency gains arising from transactions and re-measurements were $32,594 and $68,818 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and are included in &#8220;Other income (expense)&#160;- Other&#8221; in the accompanying consolidated statements of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Cash and cash equivalents:</b> Cash and cash equivalents consist of demand deposits at banks and highly liquid deposits at banks with an original maturity of three&#160;months or less. Cash and cash equivalents as of December&#160;31, 2021 and 2020 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">include $7.4 million and $8.5 million, respectively, of certificates of deposits with an original maturity of three&#160;months or less.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $7.8 million. As of December&#160;31, 2021, the Company held cash in foreign bank accounts of approximately $33.1 million, which includes a $2.5 million certificate of deposit with an original maturity of six months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Certain transfers from the Company&#8217;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. As of December&#160;31, 2021, the equivalent United States dollar cash balances for deposits held in The Bahamas were approximately $6.4 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Accounts receivable and allowance for doubtful accounts:</b> Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. <span style="background:#ffffff;">Trade accounts receivable also represent our unconditional right, subject only to the passage of time, to receive consideration arising from our performance under contracts with customers. Trade accounts receivable include amounts billed and billable on construction contracts, service and maintenance contracts and contracts for the sale of goods. Billed contract receivables have been invoiced to customers based on contracted amounts. </span>The allowance for doubtful accounts is the Company&#8217;s best estimate of the amount of probable credit losses in the Company&#8217;s existing accounts receivable balance. The Company determines the allowance for doubtful accounts based on historical write-off experience and&#160;monthly review of delinquent accounts. Past due balances are reviewed individually for collectability and disconnection. Account balances are charged off against the allowance for doubtful accounts after all means of collection have been exhausted and the potential for recovery is considered by management to be remote. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Inventory:</b> Inventory primarily includes consumables stock and spare parts stock that are valued at cost, less an allowance for obsolescence, with cost determined on the first-in, first-out basis. Inventory also includes potable water held in the Company&#8217;s reservoirs. The carrying amount of the water inventory is the lower of the average cost of producing water during the&#160;year or its net realizable value.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;background:#ffffff;">Contract assets and liabilities</b><span style="background:#ffffff;">: Billing practices for the Company&#8217;s contracts are governed by the contract terms of each project based upon costs incurred, achievement of milestones or predetermined schedules. Billings do not necessarily correlate with revenue recognized over time using the direct inputs method of accounting. </span>The Company records contract assets and contract liabilities to account for these differences in timing.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;">Contract assets, which include costs and estimated earnings in excess of billings on uncompleted contracts, arise when the Company recognizes revenue for services performed under its construction and manufacturing contracts, but the Company is not yet entitled to bill the customer under the terms of the contract. Contract liabilities, which include billings in excess of costs and estimated earnings on uncompleted contracts, represent the Company's obligation to transfer goods or services to a customer for which the Company has been paid by the customer or for which the Company has billed the customer under the terms of the contract. Revenue for future services reflected in this account are recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts are typically resolved within one year and are not <span style="background:#ffffff;">considered</span> significant financing components.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company considers retention that is withheld on progress billings as not creating an unconditional right to payment until contractual milestones are reached (typically substantial completion). Accordingly, withheld retention is considered a component of contracts assets and liabilities until finally billed to the customer, when obligations have been satisfied and the right to receipt is subject only to the passage of time. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company&#8217;s contract assets and liabilities are reported in a net asset or liability position on a contract-by-contract basis at the end of each reporting period. The Company classifies contract assets and liabilities related to construction and manufacturing contracts in current assets and current liabilities as they will be liquidated in the normal course of contract completion, although this may require more than one year.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Property, plant and equipment, net:</b> Property, plant and equipment is stated at cost less accumulated depreciation. Depreciation is calculated using a straight-line method with an allowance for estimated residual values. Rates are determined based on the estimated useful lives of the assets as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">4 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shorter of 5 years or lease term</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 10 years</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the&#160;month the asset is placed in service. Additions to construction in progress are comprised of the cost of the contracted services, direct labor and materials.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Interest costs directly attributable to the acquisition and construction of qualifying assets, which are assets that necessarily take a substantial amount of time to be ready for their intended use, are added to the cost of those assets until such time as the assets are substantially ready for use. No interest was capitalized during the years ended December 31, 2021 or 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Long-lived assets:</b> Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, the Company recognizes an impairment loss only if their carrying amounts are not recoverable through their undiscounted cash flows and measures the impairment loss based on the difference between the carrying amounts and estimated fair values.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Goodwill and intangible assets:</b> Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. The Company evaluates the possible impairment of goodwill annually as part of its reporting process for the fourth quarter of each fiscal&#160;year. Management identifies the Company&#8217;s reporting units, which consist of &#160;retail, bulk, services, and manufacturing, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. The Company determines the fair value of each reporting unit and compares the fair value to the carrying amount of the reporting unit. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the&#160;years ended December&#160;31, 2021 and 2020, the Company estimated the fair value of its reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company also estimated the fair value of each of it reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company weighted the fair values estimated for each of its reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings the Company </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">applied to each method for the years ended December&#160;31, 2021 and 2020 were 80% to the discounted cash flow method and 20% to the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair values the Company estimated for its retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by 32%, 51%, 15%, and 15% respectively, as of December 31, 2021. The fair values the Company estimated for its retail, bulk, and services reporting units exceeded their carrying amounts by 101%, 49% and 17%, respectively, as of December 31, 2020. While the fair value the Company estimated for its manufacturing reporting unit exceeded its carrying value by 31% as of December 31, 2020, due to new information the Company obtained in 2021, the Company was required to record an impairment loss for its manufacturing reporting unit&#8217;s goodwill in 2021, as discussed in paragraphs that follow.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Approximately 80% of Aerex&#8217;s revenue, and 89% of Aerex&#8217;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, the Company updated its projections for its manufacturing reporting unit&#8217;s future cash flows. Such projections assumed, in part, that Aerex&#8217;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, the Company tested its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As a result of these impairment tests, the Company determined that the estimated fair value of its manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years. The Company&#8217;s updated sales estimate for this customer based on this new information was substantially below the sales the Company anticipated to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections the Company prepared for purposes of testing its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020. Aerex&#8217;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by continuing negative economic conditions, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, the Company believes, also adversely affected the overall financial condition of Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer, and present weak economic conditions that the Company believes will continue into 2022, the Company updated its projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, the Company determined that the carrying value of its manufacturing reporting unit exceeded its fair value by $2.9 million, and the Company recorded an impairment loss to reduce its manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s manufacturing reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that Aerex&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of its manufacturing reporting unit&#8217;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s services reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that PERC&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of its services reporting unit&#8217;s goodwill of $5,320,416 and its </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Investments:</b> Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost. The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation. The Company recognizes impairment losses on declines in the fair value of the stock of investees that are other than temporary.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Other assets:</b> Under the terms of CW-Bahamas&#8217; contract with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;) to supply water from its Blue Hills desalination plant, CW-Bahamas was required to reduce the amount of water lost by the public water distribution system on New Providence Island, The Bahamas, over a one-year period by 438 million gallons, a requirement CW-Bahamas met during 2007. The Company was solely responsible for the engineering, labor and materials costs incurred to reduce the amount of lost water, which were capitalized and are being amortized on a straight-line basis over the original remaining life of the Blue Hills contract. Such costs are included in other assets and aggregated approximately $3.5 million as of December&#160;31, 2021 and 2020. Accumulated amortization for these costs was approximately $2.7 million and $2.5 million as of December&#160;31, 2021 and 2020, respectively. Amortization expense for these costs was $179,353 for the&#160;years ended December&#160;31, 2021 and 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Income taxes:</b> The Company accounts for the income taxes arising from the operations of its United States subsidiaries under the asset and liability method. Deferred tax assets and liabilities, if any, are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the&#160;years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to the extent any deferred tax asset may not be realized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company is not presently subject to income taxes in the other countries in which it operates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Revenue recognition:</b> Revenue is recognized when control of the promised goods or services is transferred to the Company&#8217;s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s revenue disaggregated by revenue source.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,104,953</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,952,370</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bulk revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,800,869</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,312,546</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Services revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,884,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,937,859</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Manufacturing revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,072,823</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,425,351</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><b style="font-weight:bold;">Total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Retail revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to end-users, including residential, commercial and governmental customers in the Cayman Islands under an exclusive retail license issued to Cayman Water by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman Island. Customers are billed on a&#160;monthly basis based on metered consumption and bills are typically collected within 30 to <span style="-sec-ix-hidden:Hidden_diVp5qBtB0KjZqeIyo-3cQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45&#160;days</span></span> after the billing date. Receivables not collected within 45&#160;days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than 1% of the Company&#8217;s total retail sales.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes revenue from water sales at the time water is supplied to the customer&#8217;s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each&#160;month. All retail water contracts are&#160;month-to-month contracts. The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its retail water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Bulk revenue</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to government-owned distributors in the Cayman Islands and The Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">OC-Cayman provides bulk water to the Water Authority-Cayman (&#8220;WAC&#8221;), a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes such water to properties in Grand Cayman outside of Cayman Water&#8217;s retail license area.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company sells bulk water in The Bahamas through its majority-owned subsidiary, CW-Bahamas, under two agreements with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. CW-Bahamas also sold water to a private resort on Bimini through December 18, 2020, which generated revenue of approximately $127,000 for the year ended December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its bulk water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Services and Manufacturing revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company provides design, engineering, management, procurement and construction services for desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas and the British Virgin Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company also designs, builds, sells, operates and manages water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the U.S.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company, through Aerex, is a custom and specialty manufacturer of water treatment-related systems and products applicable to commercial, municipal and industrial water production. Substantially all of Aerex&#8217;s customers are U.S. companies.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company generates construction and services revenue from DesalCo and PERC, and generates manufacturing revenue from Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes <span style="background:#ffffff;">revenue for its construction and its specialized/custom manufacturing contracts&#160;</span>over time under the input method using costs incurred (which represents work performed) to date relative to total estimated costs at completion to measure progress toward satisfying its performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials and amounts payable to subcontractors. The Company follows this method since it can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, the Company records revenue and recognizes profit or loss as work on the contract progresses. The Company estimates total project costs and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and updates these estimates as work on the contract progresses. The cumulative amount of revenue recorded on a contract at a specified point in time is that&#160;percentage of total estimated revenue that incurred costs to date comprises of estimated total contract costs. If, as work progresses, the actual contract costs exceed estimates, the profit recognized on revenue from that contract decreases. The Company recognizes the full amount of any estimated loss on a contract at the time the estimates indicate such a loss. Any contract assets are classified as current assets. Contract liabilities on uncompleted contracts, if any, are classified as current liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its services agreements and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Practical Expedients and Exemptions</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company does not disclose the value of unsatisfied performance obligations for (i)&#160;contracts with an original expected length of one&#160;year or less and (ii)&#160;contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Comparative amounts:</b> Certain amounts presented in the financial statements previously issued for 2020 have been reclassified to conform to the current&#160;year&#8217;s presentation.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994864474024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash and cash equivalents<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and cash equivalents</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsDisclosureTextBlock', window );">Cash and cash equivalents</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">3. Cash and cash equivalents</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Cash and cash equivalents are not restricted by the terms of the Company&#8217;s bank accounts as to withdrawal or use. As of December&#160;31, 2021 and 2020, the equivalent United States dollars of the Company&#8217;s cash and cash equivalents, including those accounts denominated in currencies other than the U.S. dollar, are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bank accounts:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,888,445</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,001,264</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,784,358</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,650,874</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,944,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,863,287</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bermudian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,832</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 32,619,843</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,518,257</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Short term deposits:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,324,258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,796,582</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,413,958</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,413,547</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,065,764</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,738,216</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,275,893</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,358,059</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,794,150</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#00ff00;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Transfers from the Company&#8217;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of the Bahamas.</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_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-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_CashAndCashEquivalentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for cash and cash equivalent footnotes,  which may include the types of deposits and money market instruments, applicable carrying amounts, restricted amounts and compensating balance arrangements. Cash and equivalents include: (1) currency on hand (2) demand deposits with banks or financial institutions (3) other kinds of accounts that have the general characteristics of demand deposits (4) 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. Generally, only investments maturing within three months from the date of acquisition qualify.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772903560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable, net<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Accounts receivable, net.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock', window );">Accounts receivable, net</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">4. Accounts receivable, net</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,409,029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,422,782</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Receivable from OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,877</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 62,171</p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 180,262</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 269,133</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,630,168</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,754,086</p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (280,861)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (270,110)</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,349,307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,483,976</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the allowance for doubtful accounts consisted of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Opening allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 142,236</p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 129,107</p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts written off during the year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,233)</p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Recovery of accounts written off </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 280,861</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270,110</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Significant concentrations of credit risk are disclosed in Note&#160;18.</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_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -URI http://asc.fasb.org/subtopic&amp;trid=2196772<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772801176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventory<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventory</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">5. Inventory</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Water stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,587</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,938</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Consumables stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 138,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 105,540</p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Spare parts stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,064,708</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,587,542</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,237,842</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,721,020</p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,504,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,214,178</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory (non-current)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,733,010</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,506,842</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771741640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contracts in progress<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Contracts in progress</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">6. Contracts in progress</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue recognized and amounts billed on contracts in progress are summarized as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue recognized to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,109,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,534,449</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amounts billed to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (6,370,855)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (17,791,928)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Retainage</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 312,130</p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,917)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 54,651</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">The above net balances are reflected in the accompanying consolidated balance sheet as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 489,961</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 516,521</p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (513,878)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (461,870)</p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,917)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 54,651</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of <span style="-sec-ix-hidden:Hidden_ANe22B19gUG017w1p2eYRQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">December 31, 2021</span></span>, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $5.7 million in aggregate transaction price for contracts with an original expected length of greater than one year. The Company expects to earn revenue as it satisfies its performance obligations under those contracts in the amount of approximately $4.8 million during the year ending <span style="-sec-ix-hidden:Hidden_wAgvE9b-oEOCy5TqD4Q-Ww;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">December 31, 2022</span></span> and $0.9 million <span style="-sec-ix-hidden:Hidden_UFQss1Ac5ku0S6GVflhWSQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">thereafter</span></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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<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 10<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130551-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 13<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130556-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130554-203045<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 9<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130550-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 12<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130554-203045<br><br>Reference 7: 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 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130554-203045<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 12<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130554-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 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130558-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 12<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130554-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772765384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, plant and equipment and construction in progress<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, plant and equipment and construction in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property, plant and equipment and construction in progress</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">7. Property, plant and equipment and construction in progress</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,316,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,566,537</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,255,925</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,250,843</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 64,324,377</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 63,734,860</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 39,780,272</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 39,149,063</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,051,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,083,811</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,079,874</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,999,463</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 287,980</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 274,230</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,456</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,456</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 136,109,235</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 135,071,263</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 83,162,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 77,383,279</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Property, plant and equipment, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Construction in progress</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 440,384</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As of December&#160;31, 2021, the Company had outstanding capital commitments of approximately $2.7 million. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the&#160;years ended December&#160;31, 2021 and 2020, $644,224 and $1,653,501, respectively, of construction in progress was placed in service. Depreciation expense was $5,995,213 and $6,335,489 for the&#160;years ended December&#160;31, 2021 and 2020, respectively.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772742248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued operations<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued operations.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock', window );">Discontinued operations</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">8. Discontinued operations</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Mexico project development</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In 2010, the Company began the pursuit, through its Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), of a project (the &#8220;Project&#8221;) that encompassed the construction, operation and minority ownership of a 100 million gallon per day seawater reverse osmosis desalination plant to be located in northern Baja California, Mexico and accompanying pipelines to deliver water to the Mexican potable water system.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Through a series of transactions that began in 2012, NSC purchased 20.1 hectares of land for approximately $21.1 million on which the proposed Project&#8217;s plant was to be constructed.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Following an assessment by the State of Baja, California (the &#8220;State&#8221;) of the need for such a desalination plant and the passage of enabling legislation in November 2015, the State officially commenced the required public tender for the Project. A consortium (the &#8220;Consortium&#8221;) comprised of NSC, Suez Medio Ambiente M&#233;xico, S.A. de C.V. (&#8220;Suez MA&#8221;), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (&#8220;NuWater&#8221;) submitted its tender for the Project in April 2016 and in June 2016, the State designated the Consortium as the winner of the tender process for the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;) to pursue completion of the Project and executed a shareholders agreement for AdR agreeing among other things that (i) AdR would purchase the land and other Project assets from NSC on the date that the Project begins commercial operation and (ii) AdR would enter into a Management and Technical Services Agreement with NSC effective on the first day that the Project begins commercial operation. NSC initially owned 99.6% of the equity of AdR. In February 2018, CW-Holdings acquired the remaining 0.4% ownership in AdR from NuWater.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On August 22, 2016, the Public Private Partnership Agreement for the Project (the &#8220;APP Contract&#8221;) was executed between AdR, the State Water Commission of Baja California (&#8220;CEA&#8221;), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (&#8220;CESPT&#8221;). The APP Contract required AdR to design, construct, finance and operate a seawater reverse osmosis desalination plant (and accompanying aqueduct) with a capacity of up to 100 million gallons per day in two phases: the first with a capacity of 50 million gallons per day </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">and an aqueduct to the Mexican potable water system in Tijuana, Baja California and the second phase with a capacity of 50 million gallons per day. The first phase was to be operational within 36 months of commencing construction and the second phase was to be operational by July 2024. The APP Contract further required AdR to operate and maintain the plant and aqueduct for a period of 37 years starting from the commencement of operation of the first phase. At the end of the operating period, ownership of the plant and aqueduct would have been transferred to CEA. The APP Contract was subsequently amended by the parties in June 2018 to increase the scope of Phase 1 and to allow for changes in the water tariff due to the changes in the exchange rate for the peso, interest rates and construction costs that had and would occur from the date the APP Contract was signed to the date construction commenced.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On June 29, 2020, AdR received a letter (the &#8220;Letter&#8221;) from the Director General of CEA and the Director General of CESPT terminating the APP Contract. The Letter requested that AdR provide an inventory of the assets that currently comprise the &#8220;Project Works&#8221; (as defined in the APP Contract) for the purpose of acknowledging and paying the non-recoverable expenses made by AdR in connection with the Project, with such reimbursement to be calculated in accordance with the terms of the APP Contract. The applicable law requires this list of non-recoverable expenses made by AdR in connection with the Project be submitted to CEA and CESPT within 20 business days from the date of receipt of the Letter. AdR initiated an&#160;amparo&#160;claim before a federal district court in Tijuana, Baja California, to challenge the provision of the applicable law requiring submittal of the list of non-recoverable expenses within the&#160;20&#160;business days term, as AdR considered such term to be unreasonably short due to the magnitude of the Project and the scope of supporting documentation required to be provided with respect to the non-recoverable expenses. AdR obtained an initial provisional suspension of the lapsing of such 20-day term from the court, and on August 10, 2020 the court made such suspension definitive until the completion of the amparo trial. As such, the&#160;20-day&#160;term for filing the list of non-recoverable expenses was suspended. Therefore, on August 28, 2020, AdR submitted their list of non-recoverable expenses, including those of NSC, to CEA and CESPT which was comprised of 51,144,525 United States dollars and an additional 137,333,114 Mexican pesos. In February 2021, AdR withdrew this amparo claim, and such withdrawal was accepted by the federal district court in Tijuana. To date, AdR has not received a response from CEA or CESPT to its submission of non-recoverable expenses.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company believes CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the <i style="font-style:italic;">Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States </i>entered into force as of October 1, 1999 (the &#8220;Treaty&#8221;). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State&#8217;s termination of the APP Contract constituted a breach by Mexico of its international obligations under the Treaty, entitling CW-Cooperatief to full reparation, including monetary damages. This letter invites Mexico to seek a resolution of this investment dispute through consultation and negotiation, but states that if the dispute cannot be resolved in this manner, CW-Cooperatief elects to refer the dispute to the International Centre for the Settlement of International Disputes for arbitration, as provided for in the Treaty. On June 29, 2021, the Mexican Ministry of Economy responded to CW-Cooperatief&#8217;s letter and proposed to hold a consultation meeting. Two such meetings were held on July 9, 2021 and August 2, 2021 on a confidential basis, without a resolution of the Company&#8217;s investment dispute.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">&#8203;On February 9, 2022, CW-Cooperatief, filed a Request for Arbitration with the International Centre for Settlement of International Disputes requesting that the United Mexican States pay CW-Cooperatief damages in excess of US$51 million plus MXN$137 million (with the exact amount to be quantified in the proceedings), plus fees, costs and pre- and post-award interest.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;">CW-Cooperatief intends to pursue vigorously the relief sought in the arbitration, in addition to pursuing all other legal remedies and courses of action available under the operative contracts and applicable law with respect to their rights, damages, fees and expenses. The Company cannot provide any assurances that CW-Cooperatief will be able to obtain the relief sought in the arbitration, and CW-Cooperatief will incur legal and other arbitration-related expenses that the Company expects will be material to its consolidated results of operations and cash flows.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company cannot provide any assurances that it will be able to obtain reimbursement for any expenses or investments made with respect to the Project.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">&#8203;</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">As a result of the cancellation of the APP Contract, in 2020 the Company discontinued all development activities associated with the Project and commenced active marketing efforts to sell the land NSC purchased for the Project. Accordingly, the assets and liabilities of CW-Cooperatief, NSC and AdR, as well as all Project development expenses, the impairment loss of approximately ($3.0 million) recorded during 2020 for Project assets, and the costs for legal and administrative activities to pursue reimbursement from the State of Baja California following the cancellation of the APP Contract, have been reclassified from the services segment to discontinued operations in the accompanying consolidated financial statements. The Company&#8217;s net losses from discontinued operations for the years ended December 31, 2021 and 2020 were ($2,574,079) and ($4,902,243), respectively. The Company&#8217;s net loss from discontinued operations for 2021 and 2020 also includes provisions of $963,540 and $316,217, respectively, for potentially uncollectible value added taxes paid that are reimbursable/receivable from the Mexican federal government. The Company recorded the 2021 provision as a result of the Mexican government&#8217;s rejection of its most recent request for repayment of these value added taxes paid. The Company believes it is legally entitled to be repaid for these value added taxes and has engaged a firm to assist it in collecting these amounts from the Mexican government. However, the Company ultimately may not be able to obtain such payment from the Mexican government and therefore may be required in the future to record another provision to write off the remaining balance of these receivables, which amounted to $340,910 as of December 31, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">Summarized financial information for the discontinued Mexico project development operation is as follows:</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 750,048</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 154,130</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 88,978</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-size:10pt;">Value added taxes receivable </span>(net of allowance of $1,279,757 and $316,217, respectively)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 340,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,267,991</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,682</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,126,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,126,898</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,288</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,909</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,319,927</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,677,588</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 190,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 190,933</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,574,079</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,902,243</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,545</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"><span style="text-decoration-line:underline;text-decoration-style:solid;">Project Litigation</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Immediately following CW-Cooperatief&#8217;s acquisition of its initial 50% ownership in NSC, the remaining 50% ownership interest in NSC was held by an unrelated company, Norte Sur Agua, S. de R.L. de C.V. (&#8220;NSA&#8221;). NSA subsequently transferred ownership of half of its shares in NSC to EWG Water LLC (&#8220;EWG&#8221;) and the other half of its shares in NSC to an individual (the &#8220;individual shareholder&#8221;). In February&#160;2012, CW-Cooperatief paid $300,000 to enter into an agreement (the &#8220;Option Agreement&#8221;) that provided&#160;it with an option, exercisable through February&#160;7, 2014, to purchase the shares of NSC owned by the individual shareholder for a price of $1.0 million along with an immediate usufruct and power of attorney to vote those shares. Such shares constituted 25% of the ownership of NSC as of February&#160;2012. In May&#160;2013, NSC repaid a $5.7 million loan payable to CW-Cooperatief by issuing additional shares of its stock. As a result of this share issuance to CW-Cooperatief, the Company indirectly acquired 99.99% of the ownership of NSC. The Option Agreement contained an anti-dilution provision that required CW-Cooperatief to transfer or otherwise cause the individual shareholder to acquire, for a total price of $1 (regardless of their par or market value), shares in NSC of an amount sufficient to maintain the individual shareholder&#8217;s 25% ownership interest in NSC if (i)&#160;any new shares of NSC were issued subsequent to the execution of the Option Agreement (causing the individual shareholder&#8217;s 25% ownership interest in NSC to be decreased); and (ii)&#160;CW-Cooperatief did not exercise its share purchase option by February&#160;7, 2014. CW-</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Cooperatief exercised its option and paid the $1.0 million to the individual shareholder to purchase the Option Agreement shares in February&#160;2014.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In January&#160;2018, EWG initiated an ordinary mercantile claim against the individual shareholder, NSC and CW-Cooperatief, (with AdR being named as a third party to be called to trial) before the Tenth Civil Judge in Tijuana, Baja California for Mercantile Matters (the &#8220;Tenth Civil Judge&#8221;). In the ordinary mercantile claim, EWG challenged, among other things, the transactions contemplated under the Option Agreement, and therefore, the capital investment transactions that increased the ownership interest of CW-Cooperatief in NSC to 99.99% as a consequence of the Option Agreement. EWG requested that the court, as a preliminary matter (a)&#160;suspend the effectiveness of the challenged transactions; (b)&#160;order certain public officials in Mexico to record the pendency of the lawsuit in the public records (including a special request to register a lien over the real estate owned by NSC); (c)&#160;appoint an inspector for NSC to oversee its commercial activities; and (d)&#160;order public officials in Mexico and credit institutions abroad to refrain from authorizing or executing any legal act related with the activities of the plaintiff, the co-defendants and the third party called to trial to avoid damages to third parties, including those with whom negotiations or any form of commercial or administrative activities, or activities of any other nature related with the &#8220;Rosarito&#8221; water desalination project, are being conducted. The Tenth Civil Judge granted, ex-parte, the preliminary relief sought by EWG, which resulted in the issuance of official writs to several governmental and public entities involved with the &#8220;Rosarito&#8221; water desalination project, including the registration of the pendency of the lawsuit in certain public records.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October&#160;16, 2018, NSC was served with the ordinary mercantile claim. On November&#160;7, 2018, NSC filed a legal response to the claim, vigorously opposing the claims made by EWG. In addition to such legal response, NSC filed (i)&#160;a request to submit the claim to arbitration, based on certain provisions of the by-laws of NSC, (ii)&#160;an appeal remedy against the preliminary relief (which was resolved in December&#160;2019, and ordered the revocation of the order of the Tenth Civil Judge granting EWG the preliminary relief), and (iii)&#160;a request for the setting of a guarantee to release the preliminary relief granted in favor of EWG.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On October 1, 2020 and following an order from a Federal Judge obtained by NSC, the Tenth Civil Judge resolved to (i) move the claim of EWG to arbitration, and (ii) suspend the corresponding ordinary mercantile procedure. EWG challenged such resolution, arguing that its notification was not lawful. The Tenth Civil Judge dismissed such challenge, and thereafter EWG filed a remedy against such dismissal. NSC appeared before the court to vigorously oppose such remedy, which has been dismissed. To date, the referral to arbitration has not occurred and, as such, the procedure is currently suspended.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution of the Tenth Civil Judge to move to arbitration, subparagraphs a) and b) that follow describe certain separate amparo claims, and appeal remedies arising from or relating to such ordinary mercantile claim and amparo claims, all in chronological order. Due to the global COVID-19 pandemic, most tribunals in Mexico suspended their activities intermittently since March 2020, with certain such tribunals partially restarting on different dates and with different special rules. As such, several resolutions are pending issuance.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 72pt;"><span style="margin-left:0pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 0pt 36pt;"><i style="font-style:italic;">a) Amparo filed by EWG against a resolution of the Tenth Civil Judge.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">In July 2021, EWG filed an amparo claim against the resolution of the Tenth Civil Judge dismissing the remedy filed by EWG against the October 1, 2020<b style="font-weight:bold;"> </b>resolution within the mentioned ordinary mercantile claim. NSC has filed before the corresponding amparo court a writ vigorously opposing this claim. Considering the foregoing, and that AdR was only named as a third party with interest, it is unnecessary for it to submit arguments against EWG in this claim. Further, CW-Cooperatief has not been notified of this amparo claim.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">Within this amparo claim, the Third District Court in Tijuana granted a suspension in favor of EWG, merely for the effect of holding in place the referral to arbitration subject matter of the October 1, 2020 resolution mentioned above. Such suspension was conditioned on the posting by EWG of a guarantee in the amount of 50,000 Mexican pesos, which has not been posted. Regardless of the effects of the suspension and the lack of the posting of a guarantee, NSC has filed an appeal remedy against its granting. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">To date, and following a final hearing that took place in March 2022, a resolution to this claim is pending issuance. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"><i style="font-style:italic;">b) Appeal filed by NSC against the suspension granted in favor of EWG.</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;">The appeal remedy mentioned in the second paragraph of item a) immediately above was admitted by the superior court on October 18, 2021 and has yet to be resolved.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Notwithstanding the resolution to move to arbitration mentioned previously, CW-Cooperatief has not been officially served with the ordinary mercantile claim, and AdR has not been notified that it has to appear for such trial. In any event, AdR is only a named third party called to trial in this claim, and no claims have been made by EWG against AdR.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company cannot presently determine what impact the resolution of this litigation may have on its consolidated financial condition, results of operations or cash flows.</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_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=2122178<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772903560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">9. Intangible assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company&#8217;s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: non-compete agreements (<span style="-sec-ix-hidden:Hidden_7Vzzq6mJ2UyIIFUN-Z-LwA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">3</span></span> and <span style="-sec-ix-hidden:Hidden_2CuHKC-KbEypnk7AYihx7Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">5&#160;years</span></span>), trade names (<span style="-sec-ix-hidden:Hidden_nq7s2BVEU0y53NOcLsh0Ow;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">15&#160;years</span></span>), customer backlog (2 years), and facility management contracts (6 years).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The costs and accumulated amortization for these assets were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 530,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 530,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 360,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 360,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,200,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,790,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,790,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (493,889)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (443,889)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (740,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (560,000)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (360,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (210,000)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (794,445)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (427,778)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,388,334)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,641,667)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,148,333</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization of intangible assets for each of the next five&#160;years and thereafter is expected to be as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 582,778</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 546,667</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 546,667</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 485,554</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 180,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,060,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization expense was $746,667 and $891,667 for the years ended December&#160;31,&#160;2021 and 2020, respectively.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -URI http://asc.fasb.org/topic&amp;trid=2144416<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772860600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">10. Leases</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company leases property and equipment under operating leases, primarily office and warehouse locations. For leases with terms greater than twelve months, the related asset and obligation are recorded at the present value of the lease payments over the term. Many of these leases contain rental escalation clauses which are factored into the determination of the lease payments when appropriate. When available, the lease payments are discounted using the rate implicit in the lease; however, the Company&#8217;s current leases do not provide a readily determinable implicit rate. Therefore, the Company&#8217;s incremental borrowing rate is estimated to discount the lease payments based on information available at the lease commencement.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">These leases contain both lease and non-lease components, which the Company has elected to treat as a single lease component. The Company elected not to recognize leases that have an original lease term, including reasonably certain renewal or purchase obligations, of twelve months or less in its consolidated balance sheets for all classes of underlying assets. Lease costs for such short-term leases are expensed on a straight-line basis over the lease term.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The land used by the Company to operate its seawater desalination plants in the Cayman Islands and The Bahamas is owned by the Company or leased to the Company for immaterial annual amounts and are not included in the lease amounts presented in the consolidated balance sheets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">All lease assets denominated in a foreign currency are measured using the exchange rate at the commencement of the lease. All lease liabilities denominated in a foreign currency are remeasured using the exchange rate as of the consolidated balance sheet date.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Effective March 9, 2021, the Company entered into a new office lease for the existing office located in Coral Springs, Florida under similar terms compared to the prior lease. This new lease expires, including all renewal options, on March 8, 2031.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Lease assets and liabilities</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">ASSETS</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,303</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,654</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,681,137</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,329,561</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,909</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,689</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,471,773</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">LIABILITIES</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 592,336</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 455,788</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,195</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 29,432</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,137,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 982,076</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,819</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,499</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,748,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,469,795</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average remaining lease term:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">7.0 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.4 years</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.6 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.1 years</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average discount rate:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">5.03%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">4.15%</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">4.77%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.48%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of lease cost were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 656,130</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 773,756</p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Short-term lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 79,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,518</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lease costs - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,281</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,983</p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 767,017</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 907,257</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Supplemental cash flow information related to leases is as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100.17%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash paid for amounts included in measurement of liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 708,095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,246</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,153</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Future lease payments relating to the Company's operating lease liabilities from continuing operations as of December 31, 2021 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ending December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 665,817</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 643,234</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 390,629</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 268,056</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 227,541</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,025,239</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total future lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,220,516</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (490,786)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,729,730</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (592,336)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,137,394</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772846840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income taxes</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">11. Income taxes</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of income before income taxes for the years ended December 31, 2021 and 2020 are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Foreign (not subject to income taxes)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,780,692</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,475,693</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Mexico</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,767,915)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,903,988)</p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,952,265)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,956,552</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,060,512</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,528,257</p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,574,079</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,902,243</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,634,591</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,430,500</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company&#8217;s provision (benefit) for income taxes for the&#160;years ended December&#160;31, 2021 and 2020, which related to U.S. operations, consisted of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 202,444</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 191,322</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (895)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 87,630</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 201,549</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 278,952</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (524,733)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (132,957)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (124,798)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (59,271)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (649,531)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (192,228)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total provision (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (447,982)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 86,724</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A reconciliation of the U.S. statutory federal tax rate to the effective rate for the&#160;years ended December&#160;31, 2021&#160;and 2020 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:24.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. statutory federal rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">State taxes, net of federal effect</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Nontaxable foreign income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (43.36)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17.28)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Research &amp; development tax credit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7.39)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11.73)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Permanent items</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (6.26)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.67)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill impairment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20.31</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Valuation allowance for deferred tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (12.33)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The tax effects of significant items comprising the Company&#8217;s net long-term deferred tax liability as of December&#160;31, 2021 and 2020 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.68%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Continuing Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Research &amp; development tax credits</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 398,413</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 613,003</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Loss carry forward</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Accrued compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 110,092</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Valuation allowances</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (139,207)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (496,343)</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 672,197</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 226,752</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 254,301</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 252,800</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 982,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,188,009</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,236,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440,809</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net deferred tax liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 564,526</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,214,057</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Discontinued Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets: </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Operating loss carryforwards - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,230,398</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,296,453</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Land basis difference - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,602,470</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,262,159</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Start-up costs - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,693,395</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,904,337</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Valuation allowances</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,526,263)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,462,949)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December 31, 2021, continuing operations has a federal net loss carryforward of $1.2 million and a state net loss carryforward of $1.1 million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $14.1 million that will begin to expire, if unused, in various amounts between 2022 and 2041.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772733896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings per share</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">12. Earnings per share</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Earnings per share (&#8220;EPS&#8221;) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (loss) (less preferred stock dividends) available to common stockholders by the weighted average number of common shares outstanding during the period. The computation of diluted EPS assumes the issuance of common shares for all potential common shares outstanding during the reporting period and, if dilutive, the effect of stock options as computed under the treasury stock method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following summarizes information related to the computation of basic and diluted EPS:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,449,658</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,613,771</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: preferred stock dividends</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (10,796)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,740)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,438,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,602,031</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,574,079)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,902,243)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 864,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,699,788</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,213,816</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,119,305</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plus:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of preferred shares outstanding during the period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 30,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,814</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Potential dilutive effect of unexercised options and unvested stock grants</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 65,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 70,836</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,310,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,223,955</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772826456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Dividends<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsAbstract', window );"><strong>Dividends.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DividendsTextBlock', window );">Dividends</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">13. Dividends</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Interim dividends declared on Class&#160;A common stock and redeemable preferred stock for each quarter of the respective&#160;years ended December&#160;31, 2021 and 2020 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Second Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fourth Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.34</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.34</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</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_cwco_DividendsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DividendsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_DividendsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsAbstract</td>
</tr>
<tr>
<td style="padding-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>37
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994864897560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment information</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">14. Segment information</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has four reportable segments: retail, bulk, services and manufacturing. The retail segment operates the water utility for the Seven Mile Beach and West Bay areas of Grand Cayman Island pursuant to an exclusive license granted by the Cayman Islands government. The bulk segment supplies potable water to government utilities in Grand Cayman and The Bahamas under long-term contracts. The services segment designs, constructs and sells water infrastructure and provides management and operating services to third parties. The manufacturing segment manufactures and services a wide range of custom and specialized water-related products applicable to commercial, municipal and industrial water production, supply and treatment. Consistent with prior periods, the Company records all non-direct general and administrative expenses in its retail business segment and does not allocate any of these non-direct expenses to its other three business segments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The accounting policies of the segments are consistent with those described in Note&#160;2. The Company evaluates each segment&#8217;s performance based upon its income (or loss) from operations. All intercompany transactions are eliminated for segment presentation purposes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company&#8217;s segments are strategic business units that are managed separately because each segment sells different products and/or services, serves customers with distinctly different needs and generates different gross profit margins.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,104,953</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,800,869</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,884,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,072,823</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,060,937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,759,272</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,707,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,828,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,356,311</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,044,016</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,041,597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,177,614</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 243,964</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,507,191</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,841,259</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,365,735</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,762,735</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,380,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,350,359</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain (loss) on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (246,851)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (485)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,900,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (3,145,836)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,044,094)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,677,362</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 414,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,036,666)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,010,996</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,623,595</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,634,591</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Benefit from income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (447,982)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,082,573</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 632,915</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,449,658</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,574,079)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 875,579</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2021 for the retail, bulk, services and manufacturing segments were $2,517,407, $3,331,554, $782,882 and $289,390, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,601,619</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,682,951</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,698,797</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,365,940</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,349,307</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787,277</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,860,808</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 589,757</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,237,842</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,357,390</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,476,936</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">512,493 </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,599,720</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 617,334</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,737</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 61,792</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,863</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,553,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 847,778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,170,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,948,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,320,416</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,985,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,425,013</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 61,736,441</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68,723,405</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">16,049,001 </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,198,280</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 154,707,127</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,319,927</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 177,027,054</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,952,370</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,312,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,937,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,425,351</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,080,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,959,563</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,698,214</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,121,080</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,859,671</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,871,556</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,352,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,239,645</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,304,271</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,768,455</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,879,445</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,260,062</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,834,917</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,460,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,434,898</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,213</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,997</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,004,924)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,100,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 408,529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,843,815</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,347,554</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,082,946</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,430,500</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 86,724</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,343,776</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 730,005</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,613,771</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,902,243)</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,711,528</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2020 for the retail, bulk, services and manufacturing segments were $2,388,781, $3,869,377, $762,182 and $386,169, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:68.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,444,455</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,022,813</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,420,609</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 596,099</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,483,976</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787,163</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,795,544</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,138,313</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,721,020</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,947,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,611,567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 487,973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,640,899</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 305,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,737</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 103,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 440,384</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,200,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 947,778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,148,333</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,170,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,948,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,320,416</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,885,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,325,013</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 56,425,159</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,771,798</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,470,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,210,685</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 156,877,964</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,677,588</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 179,555,552</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenues earned by major geographic region were:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,935,746</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,640,169</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,031,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,654,153</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,489,851</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,918,527</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenues earned from management services agreement with OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 406,358</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 415,277</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenues earned from major customers were:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from the Water and Sewerage Corporation ("WSC")</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,031,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,527,487</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the WSC</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">36%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">30%</p></td></tr><tr><td style="vertical-align:middle;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 406,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,965,041</p></td></tr><tr><td style="vertical-align:middle;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">14%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Property, plant and equipment, net by major geographic region were:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,687,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 28,474,748</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">The Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,004,707</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,975,427</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,253,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,237,809</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 34<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8981-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8844-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8657-108599<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8721-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772739224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cost of revenues and general and administrative expenses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract', window );"><strong>Cost of revenues and general and administrative expenses</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock', window );">Cost of revenues and general and administrative expenses</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">15. Cost of revenue and general and administrative expenses</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost of revenue consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Electricity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,698,148</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,389,361</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,855,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,202,012</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fuel oil</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,742,056</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,157,393</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,439,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,465,514</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Maintenance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,092,776</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,859,262</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail license royalties</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,418,820</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,489,862</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,625,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,491,799</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,952,764</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,786,698</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,531,770</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,017,770</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,356,311</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,859,671</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">General and administrative expenses consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,562,125</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,086,588</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,813,026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,436,957</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Professional fees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,506,423</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,488,948</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Directors&#8217; fees and expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 851,775</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 865,555</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 140,140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,477</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Amortization of intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 746,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 891,667</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,730,203</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,531,706</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,350,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,434,898</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</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_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for cost of revenues and general and administrative expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772842920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Stock-based compensation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">16. Stock-based compensation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has the following stock compensation plans that form part of its employees&#8217; and Directors&#8217; remuneration:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Employee Share Incentive Plan (Preferred Stock)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Employees (i.e. other than Directors and Officers), after <span style="-sec-ix-hidden:Hidden_YdM7dYC86EaCKfEKZM-B2w;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">four</span></span> consecutive years of employment, become eligible to receive shares of the Company&#8217;s preferred stock for <span style="-sec-ix-hidden:Hidden_QN5hwaabf0iOIJGHKM6vcw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$nil</span></span> consideration under its Employee Share Incentive Plan. Once an individual becomes eligible, these shares of preferred stock are awarded each subsequent year of the individual's employment (the grant date) for as long as the individual remains employed with the Company. If these employees remain with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company&#8217;s common stock on a one for one basis. In addition, at the time the preferred stock is granted, the employees receive options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company&#8217;s common stock for the first <span style="-sec-ix-hidden:Hidden_Tlfe_TGKFk6q2QbewkdKDw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">seven&#160;days</span></span> of the October&#160;immediately preceding the date of the preferred stock grant. If these options are exercised, the shares of preferred stock obtained may also be converted to shares of common stock if the employee remains with the Company through the fourth anniversary of a grant (or option exercise) date. Each employee&#8217;s option to purchase shares of preferred stock must be exercised within <span style="-sec-ix-hidden:Hidden_wsvl4L0MzkWVVe1YTEyRYg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">30&#160;days</span></span> of the grant date, which is the 90th day after the date of the independent registered public accountants&#8217; audit opinion on the Company&#8217;s consolidated financial statements. Shares of preferred stock not subsequently converted to shares of common stock are redeemable only at the discretion of the Company. Shares of preferred stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 8,632 and 6,123, respectively, and an equal number of preferred stock options was granted in each of these&#160;years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Employee Share Option Plan (Common Stock Options)</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has an employee stock option plan for certain long-serving employees of the Company. Under the plan, these employees are granted in each calendar&#160;year, as long as the employee is a participant in the Employee Share Incentive Plan, options to purchase common shares. The price at which the option may be exercised is the closing market price on the grant date, which is the 40th day after the date of the Company&#8217;s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i)&#160;the number of shares of preferred stock that employee receives for $nil consideration and (ii)&#160;the number of preferred stock options that employee exercises in that given&#160;year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the thirtieth day after the fourth anniversary of the grant date. Options granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 3,400 and 2,100, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The fair value of each option award is estimated on the date of grant using a Black-Scholes option-pricing model that uses the assumptions noted in the table below. Expected volatilities are based on historical volatilities of the Company&#8217;s common stock. The Company uses historical data to estimate option exercise and post-vesting termination behavior. The expected term of options granted is based on historical data and represents the period of time that options granted are expected to be outstanding. The Company uses historical data to estimate stock option exercises and forfeitures within its valuation model. The risk-free interest rate for the expected term of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">2008 Equity Incentive Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">On May&#160;14, 2008, the Company&#8217;s stockholders approved the 2008 Equity Incentive Plan (the &#8220;2008 Plan&#8221;) and reserved 1,500,000 shares of the Company&#8217;s Class&#160;A common shares for issuance under this plan. All Directors, executives and key employees of the Company or its affiliates are eligible for participation in the 2008 Plan which provides for the issuance of options, restricted stock and stock equivalents at the discretion of the Board.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Non-Executive Directors&#8217; Share Plan</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">This stock grant plan provides part of Directors&#8217; remuneration. Under this plan, non-Executive Directors receive a combination of cash and common stock for their participation in Board meetings. The number of shares of common stock granted is calculated based upon the market price of the Company&#8217;s common stock on October&#160;1 of the&#160;year preceding the grant. Common stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 30,911 and 19,712 shares, respectively. The Company recognized stock-based compensation for these share grants of $319,002 and $318,991 for the&#160;years ended December&#160;31, 2021 and 2020, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company measures and recognizes compensation expense at fair value for all share-based payments, including stock options. Stock-based compensation for the Employee Share Incentive Plan, Employee Share Option Plan and the 2008 Equity Incentive Plan totaled $137,215 and $125,487 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and is included in general and administrative expenses in the accompanying consolidated statements of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The significant weighted average assumptions for the&#160;years ended December&#160;31, 2021 and 2020 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.17</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected option life (years)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 51.19</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.87</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the Company&#8217;s stock option activity for the&#160;year ended December&#160;31, 2021 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life&#160;(Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Value&#160;(1)</b></p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding at beginning of period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,030</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12.98</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9.33</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,106)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited/expired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (9,466)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9.44</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,490</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12.98</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercisable as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">The intrinsic value of a stock option represents the amount by which the fair value of the underlying stock, measured by reference to the closing price of the common shares of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$10.64</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> on the Nasdaq Global Select Market on December&#160;31, 2021, exceeds the exercise price of the option.</span></td></tr></table><div style="margin-top:12pt;"/><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, 10,490 non-vested options were outstanding, with weighted average exercise price of $12.98, and average remaining contractual life of 2.30&#160;years.&#160;The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $16,554 as of December&#160;31, 2021 and are expected to be recognized over a weighted average period of 2.30&#160;years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, unrecognized compensation costs relating to redeemable preferred stock rights outstanding were $147,074 and are expected to be recognized over a weighted average period of 1.17&#160;years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table summarizes the weighted average fair value of options at the date of grant and the intrinsic value of options exercised during the years ended December 31, 2021 and 2020:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price below market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.70</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.70</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price at market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; common stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.45</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.45</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price above market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total intrinsic value of options exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,876</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,891</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Executive Long-Term Incentive Compensation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Board of Directors approved changes to the long-term incentive compensation for the Company&#8217;s Executive Officers effective for 2015 and thereafter to better align the interests of its Executive Officers with those of its shareholders. The revised long-term compensation plan includes a combination of performance and non-performance-based grants of common stock from the shares of Company stock provided for issuance under the 2008 Equity Incentive Plan.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The non-performance-based stock grant rights, which are issued on January 1 of each year, vest in one-third increments at the end of each&#160;year over a three-year period. The number of non-performance-based stock grant rights issued on January </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">1, 2021 and 2020 were 26,403 and 23,458, respectively. These stock grant rights vest in one-third increments over the <span style="-sec-ix-hidden:Hidden_FTMbIkzyt0eqy4QDdP_stg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three-year</span></span> periods ending December 31, 2023 and 2022, respectively. The total number of vested shares issued under prior years&#8217; non-performance stock grant rights totaled 25,789 and 28,891 in the years ended December 31, 2021 and 2020, respectively. For the&#160;years ended December&#160;31, 2021 and 2020, the Company recognized $306,250 and $344,940 in stock-based compensation expense, respectively, related to the incremental vesting of the non-performance stock grant rights.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The performance-based grants may be earned at the end of each&#160;year based upon the Company's three-year cumulative financial performance relative to three-year cumulative financial performance targets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">A total of 18,419 stock grant rights were earned as of December&#160;31, 2021 based upon the Company&#8217;s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2021, and the Company recognized $214,765 in stock-based compensation for the&#160;year ended December&#160;31, 2021 related to these grants. The shares associated with these grants will be issued in 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A total of 31,788 stock grant rights were earned as of December&#160;31, 2020 based upon the Company&#8217;s actual financial performance relative to the cumulative financial performance targets for the <span style="-sec-ix-hidden:Hidden_8mTRR9wXqkSZbjtKI0msDQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">three</span></span>-year period ended December 31, 2020, and the Company recognized $373,843 in stock-based compensation for the&#160;year ended December&#160;31, 2020 related to these grants. The shares associated with these grants were issued in 2021.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994864474024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement benefits<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement benefits</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">Retirement benefits</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">17. Retirement benefits</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Retirement plans are offered to all employees in California, Florida, Cayman Islands and Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees&#8217; contributions up to certain amounts. The Company matches contributions of up to 5% of a maximum salary amount of $104,400 for Cayman Islands employees, fully matches all contributions made by employees in the Bahamas, and matches contributions of up to&#160;6% of salary for Florida employees. For California employees, the Company matches contribution amounts up to 2% of the employee's salary and matches 25% of contributions above this 2% threshold, up to 10% of the employee&#8217;s salary. The Company&#8217;s expense for these plans was $584,278 and $576,096 for the years ended December 31, 2021 and 2020, respectively.</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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for retirement benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section S99<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=21916913&amp;loc=d3e273930-122802<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (o)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (p)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 60<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39689-114964<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(03)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (q)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (l)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772723960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentsAllOtherInvestmentsAbstract', window );"><strong>Financial instruments</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinancialInstrumentsDisclosureTextBlock', window );">Financial instruments</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">18. Financial instruments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Credit risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is not exposed to significant credit risk on its retail customer accounts as its policy is to cease supply of water to customers&#8217; accounts that are more than <span style="-sec-ix-hidden:Hidden_odlCgAb2tkGuHko8GsFcGA;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45&#160;days</span></span> overdue. The Company&#8217;s exposure to credit risk is concentrated on receivables from its bulk water, services, and manufacturing customers. The Company considers these receivables fully collectible and therefore has not recorded an allowance for these receivables.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Interest rate risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is not subject to significant interest-rate risk arising from fluctuations in interest rates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Foreign exchange risk:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">All relevant foreign currencies other than the Mexican peso and the euro have been fixed to the dollar for more than <span style="-sec-ix-hidden:Hidden_bdKxU7g9K0WrA2yhp7tZlw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">20&#160;years</span></span> and as a result, the Company does not employ a hedging strategy against exchange rate risk associated with the reporting in dollars. If any of these fixed exchange rates becomes a floating exchange rate or if any of the foreign currencies in which the Company conducts business depreciate significantly against the dollar, the Company&#8217;s consolidated results of operations could be adversely affected.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Fair values:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021 and 2020, the carrying amounts of cash equivalents, accounts receivable, accounts payable, accrued expenses, accrued compensation, dividends payable and other current liabilities approximate their fair values due to the short-term maturities of these instruments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Under US GAAP, fair value is defined as the exit price, or the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants as of the measurement date. US GAAP guidance also establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. Observable inputs are inputs market participants would use in valuing the asset or liability and are developed based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#8217;s assumptions about the factors market participants would use in valuing the asset or liability. The guidance establishes three levels of inputs that may be used to measure fair value:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 1&#160;- Quoted prices in active markets for identical assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 2&#160;- Inputs other than Level&#160;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.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;">Level 3&#160;- Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Assets and liabilities are classified in their entirety based on the lowest level of input that is significant to the fair value measurements. The Company reviews its fair value hierarchy classifications on a quarterly basis. Changes in the observability of valuation inputs may result in a reclassification of levels for certain securities within the fair value hierarchy.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s fair value hierarchy for assets and liabilities measured at fair value as of December&#160;31, 2021 and 2020:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Certificate of deposit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net asset arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net liability arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the Level 3 asset for the&#160;year ended December&#160;31, 2021:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net (liability)/asset arising from put/call options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Unrealized gain</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 818,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Put/call options are reported at fair value as either assets or liabilities in the consolidated balance sheets. These fair values are calculated using discounted cash flow analysis valuation techniques that incorporate unobservable inputs, such as future cash flows, weighted-average cost of capital, and expected future volatility. The inputs to these valuations are considered Level 3 inputs.</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_FinancialInstrumentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentsAllOtherInvestmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsAllOtherInvestmentsAbstract</td>
</tr>
<tr>
<td style="padding-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>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772767064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and contingencies</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">19. Commitments and contingencies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Commitments</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has entered into employment agreements with certain executives, which expire through December&#160;31, 2024 and provide for, among other things, base annual salaries in an aggregate amount of approximately $3.9 million, performance bonuses and various employee benefits.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has purchase obligations totaling approximately $5.1 million through December 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;padding-bottom:12pt;margin:0pt;">Contingencies</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">COVID-19</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;">The worldwide coronavirus (COVID-19) pandemic was formally recognized by the World Health Organization on March 11, 2020. In response to this pandemic, the governments of the countries in which the Company operates - the Cayman Islands, The Bahamas, and the United States - implemented preventative measures to slow the spread of COVID-19, measures which have had profound adverse consequences for the economies of those countries. Tourism, a major economic driver for the Cayman Islands, temporarily ceased due to closing of the country to tourist arrivals by air and sea travel and has yet to return to pre-pandemic levels. Tourist arrivals to The Bahamas by air and sea also declined significantly due to the pandemic and continue to be less than pre-pandemic numbers due to the continued reluctance of people to travel internationally. Overall economic activity in the United States has also declined.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">As a result of the impact of the COVID-19 pandemic on the economies of the countries in which the Company operates, the Company has experienced, and could continue to experience, decreases in consolidated revenue, cash flows generated from operations, net income and overall liquidity as compared to pre-pandemic periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">Furthermore, the prolonged extension of the economic downturn created by the COVID-19 pandemic could further adversely affect the markets for the Company&#8217;s products and services. Such adverse market effects could further adversely impact the Company&#8217;s expected future cash flows from its four reporting units and could require the Company to record impairment losses to reduce the carrying values of one or more of these reporting units due to a decline in their fair values.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;">Although the Company cannot presently quantify the future financial impacts of the COVID-19 pandemic, such impacts will likely continue to have a material adverse impact on the Company&#8217;s consolidated financial condition, results of operations, and cash flows. Given the uncertainty associated with the resolution of this pandemic, the Company cannot presently determine how long such adverse financial impacts may last.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Cayman Water</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company sells water through its retail operations under a license issued in July 1990 by the Cayman Islands government (the &#8220;1990 license&#8221;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January 2018, the Company continues to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman Island: Seven Mile Beach and West Bay. In 2021 and 2020, the Company generated approximately 33% and 32%, respectively, of its consolidated revenue and 47% and 44%, respectively, of its consolidated gross profit from the retail water operations conducted under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The 1990 license was originally scheduled to expire in July 2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the 1990 license expired on January 31, 2018. The Company continues to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with its understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. The Company continues to pay the royalty required under the 1990 license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#8220;OfReg&#8221;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services and promoting competition. OfReg, which began operations in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for the economic regulation of the water utility sector and the negotiations with the Company for a new retail license from the WAC to OfReg in May&#160;2017. The Company began license negotiations with OfReg in July&#160;2017 and such negotiations are ongoing. The Company has been informed during its retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of its license in a manner that could significantly reduce the operating income and cash flows the Company has historically generated from its retail license.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company is presently unable to determine what impact the resolution of its retail license negotiations will have on its cash flows, financial condition or results of operations but such resolution could result in a material reduction (or the loss) of the operating income and cash flows the Company has historically generated from Cayman Water&#8217;s retail operations and could require the Company to record impairment losses to reduce the carrying values of its retail segment assets. Such impairment losses could have a material adverse impact on the Company&#8217;s consolidated financial condition and results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"><i style="text-decoration-line:underline;text-decoration-style:solid;">CW-Bahamas</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">CW-Bahamas&#8217; accounts receivable balances (including accrued interest) due from the WSC amounted to $21.5 million and $16.8 million as of December 31, 2021 and 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable from the WSC. When these delays occur, the Company holds discussions and meetings with representatives of the WSC and The Bahamas government, and as a result, payment schedules are developed for WSC&#8217;s delinquent accounts receivable. All previous delinquent accounts receivable from the WSC, including accrued interest thereon, were eventually paid in full. Based upon this payment history, CW-Bahamas has never been required to provide an allowance for doubtful accounts for any of its accounts receivable, despite the periodic accumulation of significant delinquent balances. As of December 31, 2021, the Company has not provided an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable from the WSC. The Bahamas government and the WSC continue to make intermittent payments on these accounts receivable, and such payments amounted to approximately $22.9 million for the year ended December 31,&#160;2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="font-weight:normal;">If CW-Bahamas continues to be unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i)&#160;CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii)&#160;the Company may be required to cease the recognition of revenue on CW-Bahamas&#8217; water supply agreements with the WSC; and (iii)&#160;the Company may be required to provide an allowance for doubtful accounts for CW-Bahamas&#8217; accounts receivable. Any of these events could have a material adverse impact on the Company&#8217;s consolidated financial condition, results of operations, and cash flows.</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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771744696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related party transactions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsAbstract', window );"><strong>Related party transactions</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsDisclosureTextBlock', window );">Related party transactions</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">20. Related party transactions</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company, through PERC and the services segment, purchases engineering and technology support services from various companies with a minority shareholder who is also a minority shareholder of PERC. During the years ended December 31, 2021 and 2020, the Company made total purchases of services of approximately $438,000 and $1,349,000 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">from these companies, respectively. These total purchases are included in the Company&#8217;s cost of revenue in the accompanying consolidated statements of <span style="background:#ffffff;">income</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">On February 1, 2021, PERC entered into a sublease agreement with a related company commencing March 14, 2021 and ending August 31, 2021. This lease has been extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31,&#160;2021, the Company recognized approximately $77,000 of expense related to this lease. This lease amount is included in the Company's general and administrative expenses in the accompanying consolidated statements of income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The total amount of accounts payable outstanding to these companies as of December 31, 2021 and 2020, was approximately $164,000 and $201,000, respectively.</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_RelatedPartyTransactionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsAbstract</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://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 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -URI http://asc.fasb.org/topic&amp;trid=2122745<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39691-107864<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772758696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Supplemental disclosure of cash flow information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental disclosure of cash flow information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashFlowSupplementalDisclosuresTextBlock', window );">Supplemental disclosure of cash flow information</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;">21. Supplemental disclosure of cash flow information</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Interest paid in cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,248</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,669</p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-cash transactions:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared but not paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,298,148</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,289,854</p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from inventory to property, plant and equipment and construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 189,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 73,464</p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from construction in progress to property, plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 644,224</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,653,501</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Right-of-use assets obtained in exchange for new operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,852,608</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 299,992</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Purchases of equipment through issuance of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 95,707</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 122,292</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;">&#8203;</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_CashFlowSupplementalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -URI http://asc.fasb.org/topic&amp;trid=2134446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashFlowSupplementalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="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_SupplementalCashFlowElementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowElementsAbstract</td>
</tr>
<tr>
<td style="padding-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>45
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772789128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Impact of recent accounting standards<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract', window );"><strong>Impact of recent accounting standards</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Impact of recent accounting standards</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">22. Impact of recent accounting standards</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Adoption of New Accounting Standards:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">None.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Effect of newly issued but not yet effective accounting standards:</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">In March 2020, the FASB issued ASU No. 2020-04, Reference Rate Reform (Topic 848), which provides optional expedients and exceptions to the current guidance on contract modifications and hedging relationships to ease the financial reporting burdens of the expected market transition from LIBOR and other interbank offered rates to alternative reference rates. The guidance was effective upon issuance and may be applied prospectively to contract modifications made and hedging relationships entered into or evaluated on or before December 31, 2022. The Company is currently evaluating the impact of the new guidance on the consolidated financial statements, however the adoption of this standard is not expected to have a material impact on the Company&#8217;s consolidated financial position, results of operations or cash flows.</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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract</td>
</tr>
<tr>
<td style="padding-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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -URI http://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (j)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122150657&amp;loc=SL122150809-237846<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (c)<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772733176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent events</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent events</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">23. Subsequent events</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company evaluated subsequent events through the time of the filing of its Annual Report on Form&#160;10-K. Other than as disclosed in these consolidated financial statements, the Company is not aware of any significant events that occurred subsequent to the balance sheet date but prior to the filing of this report that would have a material impact on its consolidated financial statements.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770530760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of preparation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of preparation:</b> The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of estimates</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Use of estimates:</b> The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Significant items subject to estimates and assumptions include the carrying value of property, plant and equipment, intangible assets, goodwill and put/call options. Actual results could differ significantly from such estimates.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConsolidationPolicyTextBlock', window );">Basis of consolidation</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Basis of consolidation:</b> The accompanying consolidated financial statements include the accounts of the Company&#8217;s (i)&#160;wholly-owned subsidiaries, Aerex Industries,&#160;Inc. (&#8220;Aerex&#8221;), Aquilex,&#160;Inc. (&#8220;Aquilex&#8221;), Cayman Water Company Limited (&#8220;Cayman Water&#8221;), Ocean Conversion (Cayman) Limited (&#8220;OC-Cayman&#8221;), DesalCo Limited (&#8220;DesalCo&#8221;), Consolidated Water Cooperatief, U.A. (&#8220;CW-Cooperatief&#8221;), Consolidated Water U.S. Holdings,&#160;Inc. (&#8220;CW-Holdings&#8221;); and (ii)&#160;majority-owned subsidiaries Consolidated Water (Bahamas)&#160;Ltd. (&#8220;CW-Bahamas&#8221;), N.S.C. Agua, S.A. de C.V. (&#8220;NSC&#8221;), Aguas de Rosarito S.A.P.I. de C.V. (&#8220;AdR&#8221;), and PERC Water Corporation ("PERC"). The Company&#8217;s investment in its affiliate Ocean Conversion (BVI)&#160;Ltd. (&#8220;OC-BVI&#8221;) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">On January 24, 2020, as a result of CW-Holdings' exercise of a call option, CW-Holdings purchased the remaining&#160;</span><span style="background:#ffffff;">49%</span><span style="background:#ffffff;"> ownership interest in Aerex for </span><span style="background:#ffffff;">$8,500,000</span><span style="background:#ffffff;">&#160;in cash. After giving effect to this purchase, CW-Holdings owns&#160;</span><span style="background:#ffffff;">100%</span><span style="background:#ffffff;"> of the outstanding capital stock of Aerex. On August 11, 2020, CW-Holdings purchased an additional&#160;</span><span style="background:#ffffff;">10%</span><span style="background:#ffffff;"> of the ownership of PERC for </span><span style="background:#ffffff;">$900,000</span><span style="background:#ffffff;">, increasing its ownership of this subsidiary to&#160;</span><span style="background:#ffffff;">61%</span><span style="background:#ffffff;">.</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign currency</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Foreign currency:</b>&#160;The Company&#8217;s reporting currency is the United States dollar (&#8220;US$&#8221;). The functional currency of the Company and its subsidiaries (other than NSC, AdR and CW-Cooperatief) is the currency for each respective country. The functional currency for NSC, AdR and CW-Cooperatief is the US$. NSC and AdR conduct business in US$ and Mexican pesos and CW-Cooperatief conducts business in US$ and euros. The exchange rates for the Cayman Islands dollar and the Bahamian dollar are fixed to the US$. The exchange rates for conversion of Mexican pesos and euros into US$ vary based upon market conditions. Net foreign currency gains arising from transactions and re-measurements were $32,594 and $68,818 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and are included in &#8220;Other income (expense)&#160;- Other&#8221; in the accompanying consolidated statements of income.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and cash equivalents</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Cash and cash equivalents:</b> Cash and cash equivalents consist of demand deposits at banks and highly liquid deposits at banks with an original maturity of three&#160;months or less. Cash and cash equivalents as of December&#160;31, 2021 and 2020 </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">include $7.4 million and $8.5 million, respectively, of certificates of deposits with an original maturity of three&#160;months or less.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">As of December&#160;31, 2021, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $7.8 million. As of December&#160;31, 2021, the Company held cash in foreign bank accounts of approximately $33.1 million, which includes a $2.5 million certificate of deposit with an original maturity of six months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Certain transfers from the Company&#8217;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. As of December&#160;31, 2021, the equivalent United States dollar cash balances for deposits held in The Bahamas were approximately $6.4 million.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TradeAndOtherAccountsReceivablePolicy', window );">Accounts receivable and allowance for doubtful accounts</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Accounts receivable and allowance for doubtful accounts:</b> Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. <span style="background:#ffffff;">Trade accounts receivable also represent our unconditional right, subject only to the passage of time, to receive consideration arising from our performance under contracts with customers. Trade accounts receivable include amounts billed and billable on construction contracts, service and maintenance contracts and contracts for the sale of goods. Billed contract receivables have been invoiced to customers based on contracted amounts. </span>The allowance for doubtful accounts is the Company&#8217;s best estimate of the amount of probable credit losses in the Company&#8217;s existing accounts receivable balance. The Company determines the allowance for doubtful accounts based on historical write-off experience and&#160;monthly review of delinquent accounts. Past due balances are reviewed individually for collectability and disconnection. Account balances are charged off against the allowance for doubtful accounts after all means of collection have been exhausted and the potential for recovery is considered by management to be remote. </p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Inventory:</b> Inventory primarily includes consumables stock and spare parts stock that are valued at cost, less an allowance for obsolescence, with cost determined on the first-in, first-out basis. Inventory also includes potable water held in the Company&#8217;s reservoirs. The carrying amount of the water inventory is the lower of the average cost of producing water during the&#160;year or its net realizable value.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Contract assets and liabilities</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;background:#ffffff;">Contract assets and liabilities</b><span style="background:#ffffff;">: Billing practices for the Company&#8217;s contracts are governed by the contract terms of each project based upon costs incurred, achievement of milestones or predetermined schedules. Billings do not necessarily correlate with revenue recognized over time using the direct inputs method of accounting. </span>The Company records contract assets and contract liabilities to account for these differences in timing.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;">Contract assets, which include costs and estimated earnings in excess of billings on uncompleted contracts, arise when the Company recognizes revenue for services performed under its construction and manufacturing contracts, but the Company is not yet entitled to bill the customer under the terms of the contract. Contract liabilities, which include billings in excess of costs and estimated earnings on uncompleted contracts, represent the Company's obligation to transfer goods or services to a customer for which the Company has been paid by the customer or for which the Company has billed the customer under the terms of the contract. Revenue for future services reflected in this account are recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts are typically resolved within one year and are not <span style="background:#ffffff;">considered</span> significant financing components.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company considers retention that is withheld on progress billings as not creating an unconditional right to payment until contractual milestones are reached (typically substantial completion). Accordingly, withheld retention is considered a component of contracts assets and liabilities until finally billed to the customer, when obligations have been satisfied and the right to receipt is subject only to the passage of time. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company&#8217;s contract assets and liabilities are reported in a net asset or liability position on a contract-by-contract basis at the end of each reporting period. The Company classifies contract assets and liabilities related to construction and manufacturing contracts in current assets and current liabilities as they will be liquidated in the normal course of contract completion, although this may require more than one year.</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property, plant and equipment, net</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Property, plant and equipment, net:</b> Property, plant and equipment is stated at cost less accumulated depreciation. Depreciation is calculated using a straight-line method with an allowance for estimated residual values. Rates are determined based on the estimated useful lives of the assets as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">4 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shorter of 5 years or lease term</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 10 years</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the&#160;month the asset is placed in service. Additions to construction in progress are comprised of the cost of the contracted services, direct labor and materials.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Interest costs directly attributable to the acquisition and construction of qualifying assets, which are assets that necessarily take a substantial amount of time to be ready for their intended use, are added to the cost of those assets until such time as the assets are substantially ready for use. No interest was capitalized during the years ended December 31, 2021 or 2020.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Long-lived assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><b style="font-weight:bold;">Long-lived assets:</b> Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, the Company recognizes an impairment loss only if their carrying amounts are not recoverable through their undiscounted cash flows and measures the impairment loss based on the difference between the carrying amounts and estimated fair values.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and intangible assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Goodwill and intangible assets:</b> Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. The Company evaluates the possible impairment of goodwill annually as part of its reporting process for the fourth quarter of each fiscal&#160;year. Management identifies the Company&#8217;s reporting units, which consist of &#160;retail, bulk, services, and manufacturing, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. The Company determines the fair value of each reporting unit and compares the fair value to the carrying amount of the reporting unit. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">For the&#160;years ended December&#160;31, 2021 and 2020, the Company estimated the fair value of its reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company also estimated the fair value of each of it reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company weighted the fair values estimated for each of its reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings the Company </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">applied to each method for the years ended December&#160;31, 2021 and 2020 were 80% to the discounted cash flow method and 20% to the guideline public company method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-style:italic;margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The fair values the Company estimated for its retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by 32%, 51%, 15%, and 15% respectively, as of December 31, 2021. The fair values the Company estimated for its retail, bulk, and services reporting units exceeded their carrying amounts by 101%, 49% and 17%, respectively, as of December 31, 2020. While the fair value the Company estimated for its manufacturing reporting unit exceeded its carrying value by 31% as of December 31, 2020, due to new information the Company obtained in 2021, the Company was required to record an impairment loss for its manufacturing reporting unit&#8217;s goodwill in 2021, as discussed in paragraphs that follow.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Approximately 80% of Aerex&#8217;s revenue, and 89% of Aerex&#8217;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#8217;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, the Company updated its projections for its manufacturing reporting unit&#8217;s future cash flows. Such projections assumed, in part, that Aerex&#8217;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, the Company tested its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As a result of these impairment tests, the Company determined that the estimated fair value of its manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years. The Company&#8217;s updated sales estimate for this customer based on this new information was substantially below the sales the Company anticipated to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections the Company prepared for purposes of testing its manufacturing reporting unit&#8217;s goodwill for possible impairment as of December 31, 2020. Aerex&#8217;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by continuing negative economic conditions, which have increased Aerex&#8217;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, the Company believes, also adversely affected the overall financial condition of Aerex&#8217;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#8217;s former major customer, and present weak economic conditions that the Company believes will continue into 2022, the Company updated its projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, the Company determined that the carrying value of its manufacturing reporting unit exceeded its fair value by $2.9 million, and the Company recorded an impairment loss to reduce its manufacturing reporting unit&#8217;s goodwill by this amount for the three months ended June 30, 2021.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s manufacturing reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that Aerex&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of its manufacturing reporting unit&#8217;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#8217;s services reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that PERC&#8217;s discounted future cash inflows will be less than its present expectation, the Company may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of its services reporting unit&#8217;s goodwill of $5,320,416 and its </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;">remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on the Company&#8217;s consolidated results of operations.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentPolicyTextBlock', window );">Investments</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Investments:</b> Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost. The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation. The Company recognizes impairment losses on declines in the fair value of the stock of investees that are other than temporary.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OtherAssetsPolicyTextBlock', window );">Other assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Other assets:</b> Under the terms of CW-Bahamas&#8217; contract with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;) to supply water from its Blue Hills desalination plant, CW-Bahamas was required to reduce the amount of water lost by the public water distribution system on New Providence Island, The Bahamas, over a one-year period by 438 million gallons, a requirement CW-Bahamas met during 2007. The Company was solely responsible for the engineering, labor and materials costs incurred to reduce the amount of lost water, which were capitalized and are being amortized on a straight-line basis over the original remaining life of the Blue Hills contract. Such costs are included in other assets and aggregated approximately $3.5 million as of December&#160;31, 2021 and 2020. Accumulated amortization for these costs was approximately $2.7 million and $2.5 million as of December&#160;31, 2021 and 2020, respectively. Amortization expense for these costs was $179,353 for the&#160;years ended December&#160;31, 2021 and 2020.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income taxes</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Income taxes:</b> The Company accounts for the income taxes arising from the operations of its United States subsidiaries under the asset and liability method. Deferred tax assets and liabilities, if any, are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the&#160;years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to the extent any deferred tax asset may not be realized.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company is not presently subject to income taxes in the other countries in which it operates.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue recognition</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Revenue recognition:</b> Revenue is recognized when control of the promised goods or services is transferred to the Company&#8217;s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s revenue disaggregated by revenue source.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,104,953</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,952,370</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bulk revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,800,869</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,312,546</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Services revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,884,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,937,859</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Manufacturing revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,072,823</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,425,351</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><b style="font-weight:bold;">Total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Retail revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to end-users, including residential, commercial and governmental customers in the Cayman Islands under an exclusive retail license issued to Cayman Water by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman Island. Customers are billed on a&#160;monthly basis based on metered consumption and bills are typically collected within 30 to <span style="-sec-ix-hidden:Hidden_diVp5qBtB0KjZqeIyo-3cQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">45&#160;days</span></span> after the billing date. Receivables not collected within 45&#160;days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than 1% of the Company&#8217;s total retail sales.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes revenue from water sales at the time water is supplied to the customer&#8217;s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each&#160;month. All retail water contracts are&#160;month-to-month contracts. The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its retail water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Bulk revenue</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company produces and supplies water to government-owned distributors in the Cayman Islands and The Bahamas.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">OC-Cayman provides bulk water to the Water Authority-Cayman (&#8220;WAC&#8221;), a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes such water to properties in Grand Cayman outside of Cayman Water&#8217;s retail license area.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company sells bulk water in The Bahamas through its majority-owned subsidiary, CW-Bahamas, under two agreements with the Water and Sewerage Corporation of The Bahamas (&#8220;WSC&#8221;), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. CW-Bahamas also sold water to a private resort on Bimini through December 18, 2020, which generated revenue of approximately $127,000 for the year ended December 31, 2020.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its bulk water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Services and Manufacturing revenue</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company provides design, engineering, management, procurement and construction services for desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas and the British Virgin Islands.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company also designs, builds, sells, operates and manages water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the U.S.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company, through Aerex, is a custom and specialty manufacturer of water treatment-related systems and products applicable to commercial, municipal and industrial water production. Substantially all of Aerex&#8217;s customers are U.S. companies.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company generates construction and services revenue from DesalCo and PERC, and generates manufacturing revenue from Aerex.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company recognizes <span style="background:#ffffff;">revenue for its construction and its specialized/custom manufacturing contracts&#160;</span>over time under the input method using costs incurred (which represents work performed) to date relative to total estimated costs at completion to measure progress toward satisfying its performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials and amounts payable to subcontractors. The Company follows this method since it can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, the Company records revenue and recognizes profit or loss as work on the contract progresses. The Company estimates total project costs and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and updates these estimates as work on the contract progresses. The cumulative amount of revenue recorded on a contract at a specified point in time is that&#160;percentage of total estimated revenue that incurred costs to date comprises of estimated total contract costs. If, as work progresses, the actual contract costs exceed estimates, the profit recognized on revenue from that contract decreases. The Company recognizes the full amount of any estimated loss on a contract at the time the estimates indicate such a loss. Any contract assets are classified as current assets. Contract liabilities on uncompleted contracts, if any, are classified as current liabilities.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company has elected the &#8220;right to invoice&#8221; practical expedient for revenue recognition on its services agreements and recognizes revenue in the amount to which the Company has a right to invoice.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Practical Expedients and Exemptions</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">The Company does not disclose the value of unsatisfied performance obligations for (i)&#160;contracts with an original expected length of one&#160;year or less and (ii)&#160;contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Comparative amounts</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><b style="font-weight:bold;">Comparative amounts:</b> Certain amounts presented in the financial statements previously issued for 2020 have been reclassified to conform to the current&#160;year&#8217;s presentation.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_OtherAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for other assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OtherAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<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 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConsolidationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI http://asc.fasb.org/topic&amp;trid=2175825<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><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 http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124437754&amp;loc=d3e543-108305<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for investment in financial asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(3)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429488&amp;loc=d3e326-107755<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130561-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130563-203045<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -URI http://asc.fasb.org/topic&amp;trid=49130388<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130563-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130564-203045<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130566-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 2: 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 (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="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_TradeAndOtherAccountsReceivablePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e4975-111524<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5212-111524<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5093-111524<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradeAndOtherAccountsReceivablePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772886488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock', window );">Schedule of Estimated useful lives</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">4 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 40 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">3 to 10 years</p></td></tr><tr><td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Shorter of 5 years or lease term</p></td></tr><tr><td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">5 to 10 years</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Schedule of Disaggregation of revenue</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the Company&#8217;s revenue disaggregated by revenue source.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,104,953</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,952,370</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bulk revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,800,869</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,312,546</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Services revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,884,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,937,859</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Manufacturing revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,072,823</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,425,351</p></td></tr><tr><td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><b style="font-weight:bold;">Total revenue</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</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_cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for schedule of property plant and equipment useful life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771746440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash and cash equivalents (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and cash equivalents</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock', window );">Schedule of Cash and cash equivalents</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bank accounts:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,888,445</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,001,264</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,784,358</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,650,874</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,944,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,863,287</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bermudian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,832</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 32,619,843</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,518,257</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Short term deposits:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">United States dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,324,258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,796,582</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cayman Islands dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,413,958</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,413,547</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Bahamian dollar</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,065,764</p></td></tr><tr><td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,738,216</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,275,893</p></td></tr><tr><td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total cash and cash equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,358,059</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,794,150</p></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_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfCashAndCashEquivalentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of cash and cash equivalents.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770388696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable, net (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Accounts receivable, net.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Accounts receivable</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,409,029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,422,782</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Receivable from OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 40,877</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 62,171</p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 180,262</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 269,133</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,630,168</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,754,086</p></td></tr><tr><td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (280,861)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (270,110)</p></td></tr><tr><td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,349,307</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,483,976</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock', window );">Schedule of Allowance for doubtful accounts</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The activity for the allowance for doubtful accounts consisted of:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Opening allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 142,236</p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 129,107</p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts written off during the year</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,233)</p></td></tr><tr><td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Recovery of accounts written off </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending allowance for doubtful accounts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 280,861</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 270,110</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</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_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on financing receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11B<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=SL6953423-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.3,4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</td>
</tr>
<tr>
<td style="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>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771742200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventory (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock', window );">Schedule of Inventory</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Water stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,587</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,938</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Consumables stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 138,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 105,540</p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Spare parts stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,064,708</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,587,542</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total inventory</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,237,842</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,721,020</p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less current portion</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,504,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,214,178</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory (non-current)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,733,010</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,506,842</p></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle including inventoried costs relating to long-term contracts or programs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock</td>
</tr>
<tr>
<td style="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>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772887880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contracts in progress (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock', window );">Summary of information relative to revenue recognized and amounts billed on contracts in progress</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenue recognized and amounts billed on contracts in progress are summarized as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue recognized to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,109,396</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,534,449</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Amounts billed to date on contracts in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (6,370,855)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (17,791,928)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Retainage</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 312,130</p></td></tr><tr><td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,917)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 54,651</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">The above net balances are reflected in the accompanying consolidated balance sheet as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 489,961</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 516,521</p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Contract liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (513,878)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (461,870)</p></td></tr><tr><td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Net contract asset (liability)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (23,917)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 54,651</p></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_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for revenue recognized and amounts billed with regard to contracts with customers in progress.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772736056">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, plant and equipment and construction in progress (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, plant and equipment and construction in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Schedule of Property, plant and equipment and construction in progress</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,316,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,566,537</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Buildings</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,255,925</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,250,843</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 64,324,377</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 63,734,860</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Distribution system</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 39,780,272</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 39,149,063</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Office furniture, fixtures and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,051,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,083,811</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Vehicles</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,079,874</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,999,463</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Leasehold improvements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 287,980</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 274,230</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lab equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,456</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,456</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 136,109,235</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 135,071,263</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less accumulated depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 83,162,696</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 77,383,279</p></td></tr><tr><td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Property, plant and equipment, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></td></tr><tr><td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Construction in progress</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,863</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 440,384</p></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772872824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued operations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract', window );"><strong>Discontinued operations.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock', window );">Schedule of financial information for Mexico project development</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">Summarized financial information for the discontinued Mexico project development operation is as follows:</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 750,048</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 154,130</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 88,978</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><span style="font-size:10pt;">Value added taxes receivable </span>(net of allowance of $1,279,757 and $316,217, respectively)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 340,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,267,991</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,682</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Land</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,126,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 21,126,898</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,288</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,909</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,319,927</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,677,588</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Total liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 190,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 190,933</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Income from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,574,079</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,902,243</p></td></tr><tr><td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Depreciation expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,545</p></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_DiscontinuedOperationsAndDisposalGroupsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3A<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=SL51724579-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1474-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5D<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721677-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721659-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4B<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721665-107760<br><br>Reference 7: 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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721671-107760<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721663-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="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>55
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771738584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 530,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 530,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 360,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 360,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,200,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,200,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,790,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,790,000</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (493,889)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (443,889)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trade names</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (740,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (560,000)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer backlogs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (360,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (210,000)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Facility management contracts</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (794,445)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (427,778)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,388,334)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,641,667)</p></td></tr><tr><td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intangible assets, net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,148,333</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Amortization of intangible assets for each of the next five&#160;years and thereafter is expected to be as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 582,778</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 546,667</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 546,667</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 485,554</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 180,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,060,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772914952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock', window );">Schedule of lease-related assets and liabilities</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">ASSETS</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses and other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,303</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,654</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,681,137</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,329,561</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,898</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,909</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease right-of-use assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,700,689</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,471,773</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">LIABILITIES</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Current</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current maturities of operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 592,336</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 455,788</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,195</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 29,432</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Noncurrent</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,137,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 982,076</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent liabilities of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,819</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,499</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,748,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,469,795</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average remaining lease term:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">7.0 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.4 years</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.6 years</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1.1 years</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;">Weighted average discount rate:</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">5.03%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">4.15%</p></td></tr><tr><td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">4.77%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.48%</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Schedule of Lease, Cost</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of lease cost were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 656,130</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 773,756</p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Short-term lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 79,606</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,518</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Lease costs - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,281</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,983</p></td></tr><tr><td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 767,017</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 907,257</p></td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock', window );">Schedule of Cash Flow, Supplemental</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Supplemental cash flow information related to leases is as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100.17%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cash paid for amounts included in measurement of liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 708,095</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Operating cash outflows for operating leases - discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,246</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,153</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of future lease payments relating to the Company's operating lease liabilities</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Years ending December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 665,817</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 643,234</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 390,629</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 268,056</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 227,541</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,025,239</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total future lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,220,516</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: imputed interest</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (490,786)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,729,730</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: current obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (592,336)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Noncurrent lease obligations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,137,394</p></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_cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for lessee operating lease related assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of supplemental cash flow information for the periods presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock</td>
</tr>
<tr>
<td style="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>57
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994774596712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Schedule of components of income before income taxes</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The components of income before income taxes for the years ended December 31, 2021 and 2020 are as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Foreign (not subject to income taxes)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,780,692</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,475,693</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Mexico</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,767,915)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,903,988)</p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,952,265)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,956,552</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,060,512</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,528,257</p></td></tr><tr><td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,574,079</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,902,243</p></td></tr><tr><td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,634,591</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,430,500</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of provision for income taxes deferred tax benefit relating to U.S. operations</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The Company&#8217;s provision (benefit) for income taxes for the&#160;years ended December&#160;31, 2021 and 2020, which related to U.S. operations, consisted of the following:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 202,444</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 191,322</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (895)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 87,630</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 201,549</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 278,952</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Federal</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (524,733)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (132,957)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">State</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (124,798)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (59,271)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#8212;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (649,531)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (192,228)</p></td></tr><tr><td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total provision (benefit)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (447,982)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 86,724</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of reconciliation of federal tax rate to the effective rate</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A reconciliation of the U.S. statutory federal tax rate to the effective rate for the&#160;years ended December&#160;31, 2021&#160;and 2020 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:24.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. statutory federal rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">State taxes, net of federal effect</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.72</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Nontaxable foreign income</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (43.36)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17.28)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Research &amp; development tax credit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7.39)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11.73)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Permanent items</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (6.26)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.67)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill impairment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20.31</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Valuation allowance for deferred tax assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5.60</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (12.33)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of tax effects of significant items net long-term deferred tax assets liability</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">The tax effects of significant items comprising the Company&#8217;s net long-term deferred tax liability as of December&#160;31, 2021 and 2020 were as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.68%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Continuing Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Research &amp; development tax credits</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 398,413</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 613,003</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Loss carry forward</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Accrued compensation</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112,446</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 110,092</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Valuation allowances</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (139,207)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (496,343)</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 672,197</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 226,752</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 254,301</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 252,800</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 982,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,188,009</p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,236,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,440,809</p></td></tr><tr><td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Net deferred tax liability</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 564,526</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,214,057</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><b style="font-weight:bold;">Discontinued Operations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Deferred tax assets: </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Operating loss carryforwards - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,230,398</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,296,453</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Land basis difference - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,602,470</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,262,159</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Start-up costs - Mexico</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,693,395</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,904,337</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="white-space:pre-wrap;">   Valuation allowances</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,526,263)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (10,462,949)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> &#8212;</p></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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of income before income tax between domestic and foreign jurisdictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</td>
</tr>
<tr>
<td style="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>58
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772894456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of computation of basic and diluted EPS</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';">&#160;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,449,658</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,613,771</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: preferred stock dividends</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (10,796)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,740)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,438,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,602,031</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,574,079)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,902,243)</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income available to common shares in the determination of basic earnings per common share</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 864,783</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,699,788</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,213,816</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,119,305</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Plus:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> <span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of preferred shares outstanding during the period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 30,348</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,814</p></td></tr><tr><td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Potential dilutive effect of unexercised options and unvested stock grants</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 65,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 70,836</p></td></tr><tr><td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,310,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,223,955</p></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772829400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Dividends (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsAbstract', window );"><strong>Dividends.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsDeclaredTableTextBlock', window );">Schedule of dividends</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">First Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Second Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Third Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fourth Quarter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.085</p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.34</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.34</p></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_DividendsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsAbstract</td>
</tr>
<tr>
<td style="padding-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_DividendsDeclaredTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information related to dividends declared, including paid and unpaid dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsDeclaredTableTextBlock</td>
</tr>
<tr>
<td style="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>60
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770508024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of segment reporting information, by segment</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,104,953</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,800,869</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,884,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,072,823</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,060,937</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,759,272</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,707,243</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,828,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,356,311</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,044,016</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,041,597</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,177,614</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 243,964</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 23,507,191</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,841,259</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,365,735</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,762,735</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,380,630</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,350,359</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain (loss) on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (246,851)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (485)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,900,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (3,145,836)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,044,094)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,677,362</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 414,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,036,666)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,010,996</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,623,595</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,634,591</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Benefit from income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (447,982)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,082,573</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 632,915</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,449,658</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,574,079)</p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 875,579</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2021 for the retail, bulk, services and manufacturing segments were $2,517,407, $3,331,554, $782,882 and $289,390, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,601,619</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,682,951</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,698,797</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,365,940</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,349,307</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787,277</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,860,808</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 589,757</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,237,842</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,357,390</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,476,936</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">512,493 </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,599,720</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 617,334</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,737</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 61,792</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 710,863</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,553,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 847,778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,401,666</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,170,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,948,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,320,416</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,985,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,425,013</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 61,736,441</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68,723,405</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">16,049,001 </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,198,280</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 154,707,127</p></td></tr><tr><td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,319,927</p></td></tr><tr><td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 177,027,054</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,952,370</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,312,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,937,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,425,351</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,080,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,959,563</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,698,214</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,121,080</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,859,671</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,871,556</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,352,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,239,645</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,304,271</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,768,455</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">General and administrative expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,879,445</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,260,062</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,834,917</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,460,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,434,898</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Gain on asset dispositions and impairments, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,213</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,997</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income (loss) from operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,004,924)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,100,134</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 408,529</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,843,815</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,347,554</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other income, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,082,946</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,430,500</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Provision for income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 86,724</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,343,776</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Income from continuing operations attributable to non-controlling interests</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 730,005</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,613,771</p></td></tr><tr><td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net loss from discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,902,243)</p></td></tr><tr><td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income attributable to Consolidated Water Co. Ltd. stockholders</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,711,528</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2020 for the retail, bulk, services and manufacturing segments were $2,388,781, $3,869,377, $762,182 and $386,169, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:68.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As&#160;of December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Retail</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Bulk</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Services</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Manufacturing</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,444,455</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,022,813</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,420,609</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 596,099</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,483,976</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventory, current and non-current</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787,163</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,795,544</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,138,313</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,721,020</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property, plant and equipment, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,947,545</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 27,611,567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 487,973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,640,899</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 305,110</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31,737</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 103,537</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 440,384</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangibles, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,200,555</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 947,778</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,148,333</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,170,511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,948,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,320,416</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,885,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,325,013</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total segment assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 56,425,159</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,771,798</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 14,470,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,210,685</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 156,877,964</p></td></tr><tr><td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets of discontinued operations</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,677,588</p></td></tr><tr><td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 179,555,552</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock', window );">Schedule of revenues earned by major geographic region</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,935,746</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,640,169</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,031,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,654,153</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,489,851</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,918,527</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenues earned from management services agreement with OC-BVI</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 406,358</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 415,277</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 66,863,502</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 72,628,126</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">Revenues earned from major customers were:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from the Water and Sewerage Corporation ("WSC")</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,031,547</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,527,487</p></td></tr><tr><td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the WSC</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">36%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">30%</p></td></tr><tr><td style="vertical-align:middle;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Revenue earned from one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 406,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,965,041</p></td></tr><tr><td style="vertical-align:middle;width:73.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Percentage of consolidated revenue earned from the one manufacturing segment customer</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">1%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">14%</p></td></tr></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock', window );">Schedule of long-lived assets by geographic areas</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cayman Islands</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,687,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 28,474,748</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">The Bahamas</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,004,707</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,975,427</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,253,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,237,809</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,946,539</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,687,984</p></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_LongLivedAssetsByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph b<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the names of foreign countries from which revenue is material and the amount of revenue from external customers attributed to those countries. An entity may also provide subtotals of geographic information about groups of countries.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-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 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8813-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: 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> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772754632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cost of revenues and general and administrative expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract', window );"><strong>Cost of revenues and general and administrative expenses</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock', window );">Schedule of cost of revenues and general and administrative expenses</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Cost of revenue consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Electricity</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,698,148</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,389,361</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,855,073</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,202,012</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fuel oil</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,742,056</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,157,393</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,439,042</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,465,514</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Maintenance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,092,776</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,859,262</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Retail license royalties</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,418,820</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,489,862</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,625,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,491,799</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Materials</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,952,764</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,786,698</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,531,770</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,017,770</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,356,311</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 45,859,671</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">General and administrative expenses consist of:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employee costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,562,125</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,086,588</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Insurance</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,813,026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,436,957</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Professional fees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,506,423</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,488,948</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Directors&#8217; fees and expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 851,775</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 865,555</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Depreciation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 140,140</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,477</p></td></tr><tr><td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Amortization of intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 746,667</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 891,667</p></td></tr><tr><td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,730,203</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,531,706</p></td></tr><tr><td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,350,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,434,898</p></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_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for cost of revenues and general and administrative expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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>62
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770363960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of significant weighted average assumptions</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;</b></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.17</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected option life (years)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1.1</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected volatility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 31.92</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 51.19</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Expected dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.87</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of company's stock option activity</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;">A summary of the Company&#8217;s stock option activity for the&#160;year ended December&#160;31, 2021 is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Remaining</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Aggregate</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Exercise</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Contractual</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Intrinsic</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Price</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Life&#160;(Years)</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Value&#160;(1)</b></p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding at beginning of period</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,030</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12.98</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9.33</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (2,106)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Forfeited/expired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (9,466)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9.44</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Outstanding as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,490</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12.98</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Exercisable as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">years&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:6.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(1)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">The intrinsic value of a stock option represents the amount by which the fair value of the underlying stock, measured by reference to the closing price of the common shares of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">$10.64</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> on the Nasdaq Global Select Market on December&#160;31, 2021, exceeds the exercise price of the option.</span></td></tr></table><div style="margin-top:12pt;"/><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock', window );">Schedule of weighted average fair value of options at the date of grant and the intrinsic value</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">&#160;&#160;&#160;&#160;</b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price below market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.70</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.71</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.70</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price at market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; common stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.45</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.89</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.45</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Options granted with an exercise price above market price on the date of grant:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Management employees</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Employees &#8212; preferred stock</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Overall weighted average</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td></tr><tr><td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total intrinsic value of options exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,876</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,891</p></td></tr></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-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> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994773830584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InvestmentsAllOtherInvestmentsAbstract', window );"><strong>Financial instruments</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock', window );">Schedule of Fair value hierarchy for assets and liabilities</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Assets:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-weight:bold;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Certificate of deposit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500,000</p></td></tr><tr><td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net asset arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December&#160;31,&#160;2020</b></p></td></tr><tr><td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;1</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;2</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level&#160;3</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Liabilities:</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Recurring</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net liability arising from put/call options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> &#8212;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Schedule of Net liability arising from put/call options</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net (liability)/asset arising from put/call options</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (690,000)</p></td></tr><tr><td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Unrealized gain</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 818,000</p></td></tr><tr><td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance as of December&#160;31,&#160;2021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128,000</p></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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19279-110258<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2C<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=SL7498348-110258<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="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_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentsAllOtherInvestmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsAllOtherInvestmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772910184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Supplemental disclosure of cash flow information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', window );"><strong>Supplemental disclosure of cash flow information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation', window );">Schedule of Supplemental disclosure of cash flow information</a></td>
<td class="text"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">&#8203;</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:0pt;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">&#8203;</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Year Ended December&#160;31,&#160;</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;&#160;&#160;</p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Interest paid in cash</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,248</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,669</p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Non-cash transactions:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">&#160;</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">&#160;&#160;</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Dividends declared but not paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,298,148</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,289,854</p></td></tr><tr><td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from inventory to property, plant and equipment and construction in progress</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 189,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 73,464</p></td></tr><tr><td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Transfers from construction in progress to property, plant and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 644,224</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,653,501</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Right-of-use assets obtained in exchange for new operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,852,608</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 299,992</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Purchases of equipment through issuance of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:11pt;visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 95,707</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">&#8203;</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 122,292</p></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_cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_SupplementalCashFlowElementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowElementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994877631592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">$ 7,738,216<span></span>
</td>
<td class="nump">$ 9,275,893<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DepositsHeldInForeignBank', window );">Deposits held in foreign bank</a></td>
<td class="nump">6,400,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="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract', window );"><strong>Foreign Currency Transaction Gain (Loss), before Tax [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign Currency Transaction Gain (Loss), before Tax</a></td>
<td class="nump">32,594<span></span>
</td>
<td class="nump">68,818<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember', window );">Certificate of deposit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">7,400,000<span></span>
</td>
<td class="nump">$ 8,500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DepositsHeldInForeignBank', window );">Deposits held in foreign bank</a></td>
<td class="nump">$ 2,500,000<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_cwco_DepositsHeldInForeignBank">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deposits held in foreign banks, as stated in equivalent United States dollars.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DepositsHeldInForeignBank</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30690-110894<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 35<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123602790&amp;loc=d3e30226-110892<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=120253306&amp;loc=d3e28228-110885<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770532552">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accounting policies - Cash and cash equivalents (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract', window );"><strong>Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Cash Equivalents, at Carrying Value</a></td>
<td class="nump">$ 7,738,216<span></span>
</td>
<td class="nump">$ 9,275,893<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashUninsuredAmount', window );">Cash, Uninsured Amount</a></td>
<td class="nump">7,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank', window );">Cash And Restricted Cash Equivalents Held In Foreign Bank</a></td>
<td class="nump">33,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DepositsHeldInForeignBank', window );">Deposits held in foreign bank</a></td>
<td class="nump">6,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember', window );">Certificate of deposit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract', window );"><strong>Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Cash Equivalents, at Carrying Value</a></td>
<td class="nump">7,400,000<span></span>
</td>
<td class="nump">$ 8,500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DepositsHeldInForeignBank', window );">Deposits held in foreign bank</a></td>
<td class="nump">$ 2,500,000<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_cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the amount cash held in foreign bank accounts including restricted cash.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_DepositsHeldInForeignBank">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deposits held in foreign banks, as stated in equivalent United States dollars.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DepositsHeldInForeignBank</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashUninsuredAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashUninsuredAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768876120">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies - Disaggregated revenue (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">$ 66,863,502<span></span>
</td>
<td class="nump">$ 72,628,126<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue', window );">Number of days after consumption billings are considered past due</a></td>
<td class="text">45 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BS', window );">Bahamas [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">$ 24,031,547<span></span>
</td>
<td class="nump">21,654,153<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BS', window );">Bahamas [Member] | Consolidated Water Bahamas [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 127,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected', window );">Number of days after consumption billings are collected</a></td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected', window );">Number of days after consumption billings are collected</a></td>
<td class="text">45 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PercentageOfBadDebts', window );">Percentage Of Bad Debts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_RetailRevenuesMember', window );">Retail revenue [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">$ 22,104,953<span></span>
</td>
<td class="nump">$ 22,952,370<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember', window );">Bulk revenue [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">26,800,869<span></span>
</td>
<td class="nump">24,312,546<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesRevenuesMember', window );">Services revenue [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">13,884,857<span></span>
</td>
<td class="nump">12,937,859<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingRevenuesMember', window );">Manufacturing revenue [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total Revenue</a></td>
<td class="nump">$ 4,072,823<span></span>
</td>
<td class="nump">$ 12,425,351<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_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days after consumption billings are collected.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysAfterConsumptionBillingsAreCollected</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days after consumption billings are considered past due.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PercentageOfBadDebts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The percentage representing the bad debts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PercentageOfBadDebts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&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 http://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 http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123359005&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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_srt_StatementGeographicalAxis=country_BS">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_BS</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ConsolidatedEntitiesAxis=cwco_ConsolidatedWaterBahamasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ConsolidatedEntitiesAxis=cwco_ConsolidatedWaterBahamasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=cwco_RetailRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_RetailRevenuesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ServicesRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesRevenuesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ManufacturingRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingRevenuesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769922232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies - Goodwill and intangible assets (Details)<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($) </div>
<div>customer</div>
</th>
<th class="th"><div>Aug. 11, 2020</div></th>
<th class="th"><div>Jan. 24, 2020</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,425,013<span></span>
</td>
<td class="nump">$ 13,325,013<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,401,666<span></span>
</td>
<td class="nump">$ 4,148,333<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Impairment of goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,900,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Unamortized balance of intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,401,666<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember', window );">Retail [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">32<span></span>
</td>
<td class="nump">101<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,170,511<span></span>
</td>
<td class="nump">$ 1,170,511<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember', window );">Bulk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">51<span></span>
</td>
<td class="nump">49<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,948,875<span></span>
</td>
<td class="nump">$ 1,948,875<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember', window );">Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="nump">17<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,320,416<span></span>
</td>
<td class="nump">$ 5,320,416<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,553,888<span></span>
</td>
<td class="nump">$ 3,200,555<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember', window );">Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="nump">31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,985,211<span></span>
</td>
<td class="nump">$ 4,885,211<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 847,778<span></span>
</td>
<td class="nump">$ 947,778<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_FairValueDeterminingMethodAxis=cwco_DiscountedCashFlowMethodMember', window );">Discounted Cash Flow Method [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValuePercentageSegmentReportingInformation', window );">Estimated Fair Value Percentage Segment Reporting Information</a></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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_FairValueDeterminingMethodAxis=cwco_GuidelinePublicCompanyMethodMember', window );">Guideline Public Company Method [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValuePercentageSegmentReportingInformation', window );">Estimated Fair Value Percentage Segment Reporting Information</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Ownership interest acquired</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">49.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfCustomers', window );">Number of customers | customer</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex | Revenue Benchmark [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of total</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>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex | Gross Profit [Member] | Customer Concentration Risk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Percentage of total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">89.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex | Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,985,211<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 847,778<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillImpairmentLoss', window );">Impairment of goodwill</a></td>
<td class="nump">$ 2,900,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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex | Discounted Cash Flow Method [Member] | Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValuePercentageSegmentReportingInformation', window );">Estimated Fair Value Percentage Segment Reporting Information</a></td>
<td class="nump">80.00%<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>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex | Guideline Public Company Method [Member] | Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValuePercentageSegmentReportingInformation', window );">Estimated Fair Value Percentage Segment Reporting Information</a></td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Ownership interest acquired</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">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation | Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EstimatedFairValueCarryingAmountExceededPercentage', window );">Estimated Fair Value Carrying Amount Exceeded Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,320,416<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,553,888<span></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_cwco_EstimatedFairValueCarryingAmountExceededPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the exceeded percentage of estimated fair value of reporting segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EstimatedFairValueCarryingAmountExceededPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_EstimatedFairValuePercentageSegmentReportingInformation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the estimated fair value of reporting segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EstimatedFairValuePercentageSegmentReportingInformation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Refers to the number of customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfCustomers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</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_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 2: 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 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: 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 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<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 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 3: 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> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillImpairmentLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_FairValueDeterminingMethodAxis=cwco_DiscountedCashFlowMethodMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_FairValueDeterminingMethodAxis=cwco_DiscountedCashFlowMethodMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_FairValueDeterminingMethodAxis=cwco_GuidelinePublicCompanyMethodMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_FairValueDeterminingMethodAxis=cwco_GuidelinePublicCompanyMethodMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_GrossProfitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_GrossProfitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770787432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies - Investments and Other assets (Details)<br> gal in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>gal</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CriteriaForRecognizingInvestmentAtCost', window );">Criteria for recognizing investment at cost</a></td>
<td class="text">Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentAdditionalInformation', window );">Equity Method Investment, Additional Information</a></td>
<td class="text">The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedAmortizationOfOtherDeferredCosts', window );">Accumulated Amortization of Other Deferred Costs</a></td>
<td class="nump">$ 2,700,000<span></span>
</td>
<td class="nump">$ 2,500,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAmortizationOfDeferredCharges', window );">Amortization of Other Deferred Charges</a></td>
<td class="nump">$ 179,353<span></span>
</td>
<td class="nump">179,353<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem', window );">Amount required to reduce the amount of water lost by the public water distribution system | gal</a></td>
<td class="nump">438<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember', window );">Capitalized Engineering Labor and Materials Cost [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssets', window );">Other Assets</a></td>
<td class="nump">$ 3,500,000<span></span>
</td>
<td class="nump">$ 3,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_cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount required to reduce the amount of water lost by the public water distribution system.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:volumeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_CriteriaForRecognizingInvestmentAtCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the conditions to recognize the investment value in cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CriteriaForRecognizingInvestmentAtCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AccumulatedAmortizationOfOtherDeferredCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amortization of other deferred costs capitalized at the end of the reporting period. Does not include deferred finance costs, deferred acquisition costs of insurance companies, or deferred leasing costs for real estate operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedAmortizationOfOtherDeferredCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EquityMethodInvestmentAdditionalInformation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This serves as a place to record data that is not required by accounting literature but is useful for readers of the financial statements as it relates to the details of an equity method investment in common stock. Such information may include the amount of change for a change in ownership (equity) percentage in a given period and the amount and type of the consideration given or received in relation to the change in ownership.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentAdditionalInformation</td>
</tr>
<tr>
<td style="padding-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_OtherAmortizationOfDeferredCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization of other deferred costs recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAmortizationOfDeferredCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 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(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769897944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies - Property, plant and equipment (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Building [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">40 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Building [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember', window );">Plant And Equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">40 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember', window );">Plant And Equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">4 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_DistributionSystemsMember', window );">Distribution Systems [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">40 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_DistributionSystemsMember', window );">Distribution Systems [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture, fixtures and equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture, fixtures and equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives', window );">Property, Plant and Equipment, Estimated Useful Lives</a></td>
<td class="text">Shorter of 5 years or lease term<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember', window );">Lab equipment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember', window );">Lab equipment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Describes the periods of time over which an entity anticipates to receive utility from its property, plant and equipment (that is, the periods of time over which an entity allocates the initial cost of its property, plant and equipment).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 35<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123364984&amp;loc=d3e1205-110223<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_DistributionSystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_DistributionSystemsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769924152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounting policies - Additional Information (Details)<br> gal in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Aug. 11, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jan. 24, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>gal</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract', window );"><strong>Foreign Currency Transaction Gain (Loss), before Tax [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestCostsCapitalized', window );">Interest Costs Capitalized</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign Currency Transaction Gain (Loss), before Tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 32,594<span></span>
</td>
<td class="nump">68,818<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CriteriaForRecognizingInvestmentAtCost', window );">Criteria for recognizing investment at cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentAdditionalInformation', window );">Equity Method Investment, Additional Information</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedAmortizationOfOtherDeferredCosts', window );">Accumulated Amortization of Other Deferred Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,700,000<span></span>
</td>
<td class="nump">2,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAmortizationOfDeferredCharges', window );">Amortization of Other Deferred Charges</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 179,353<span></span>
</td>
<td class="nump">179,353<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem', window );">Amount required to reduce the amount of water lost by the public water distribution system | gal</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">438<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue', window );">Number of days after consumption billings are considered past due</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">45 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 66,863,502<span></span>
</td>
<td class="nump">$ 72,628,126<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_AerexIndustriesIncMember', window );">Aerex</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Ownership interest held</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">100.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 8,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="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByParent', window );">Ownership interest held</a></td>
<td class="nump">61.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Cash</a></td>
<td class="nump">$ 900,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="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected', window );">Number of days after consumption billings are collected</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected', window );">Number of days after consumption billings are collected</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">45 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PercentageOfBadDebts', window );">Percentage Of Bad Debts</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">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BS', window );">Bahamas [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 24,031,547<span></span>
</td>
<td class="nump">$ 21,654,153<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Ownership interest acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">49.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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Ownership interest acquired</a></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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember', window );">Retail [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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,104,953<span></span>
</td>
<td class="nump">22,952,370<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember', window );">Bulk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,800,869<span></span>
</td>
<td class="nump">24,312,546<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember', window );">Services [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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,884,857<span></span>
</td>
<td class="nump">12,937,859<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember', window );">Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,072,823<span></span>
</td>
<td class="nump">12,425,351<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember', window );">Bulk revenue [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="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Contracts in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,800,869<span></span>
</td>
<td class="nump">24,312,546<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember', window );">Capitalized Engineering Labor and Materials Cost [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract', window );"><strong>Foreign Currency Transaction Gain (Loss), before Tax [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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssets', window );">Other Assets</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="nump">$ 3,500,000<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_cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount required to reduce the amount of water lost by the public water distribution system.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:volumeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_CriteriaForRecognizingInvestmentAtCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the conditions to recognize the investment value in cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CriteriaForRecognizingInvestmentAtCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfDaysAfterConsumptionBillingsAreCollected">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days after consumption billings are collected.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysAfterConsumptionBillingsAreCollected</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days after consumption billings are considered past due.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PercentageOfBadDebts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The percentage representing the bad debts.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PercentageOfBadDebts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AccumulatedAmortizationOfOtherDeferredCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amortization of other deferred costs capitalized at the end of the reporting period. Does not include deferred finance costs, deferred acquisition costs of insurance companies, or deferred leasing costs for real estate operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedAmortizationOfOtherDeferredCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="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_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6613-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120321790&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6578-128477<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentAdditionalInformation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This serves as a place to record data that is not required by accounting literature but is useful for readers of the financial statements as it relates to the details of an equity method investment in common stock. Such information may include the amount of change for a change in ownership (equity) percentage in a given period and the amount and type of the consideration given or received in relation to the change in ownership.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentAdditionalInformation</td>
</tr>
<tr>
<td style="padding-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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30690-110894<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 35<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123602790&amp;loc=d3e30226-110892<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=120253306&amp;loc=d3e28228-110885<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124440516&amp;loc=d3e30840-110895<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract</td>
</tr>
<tr>
<td style="padding-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_InterestCostsCapitalized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of interest capitalized during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestCostsCapitalized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_MinorityInterestOwnershipPercentageByParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The parent entity's interest in net assets of the subsidiary, expressed as a percentage.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestOwnershipPercentageByParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAmortizationOfDeferredCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization of other deferred costs recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAmortizationOfDeferredCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 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(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&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 http://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 http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123359005&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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_srt_OwnershipAxis=cwco_AerexIndustriesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=cwco_AerexIndustriesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_BS">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_BS</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkRevenuesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_CapitalizedEngineeringLaborAndMaterialsCostMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769825688">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash and cash equivalents (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Bank accounts</a></td>
<td class="nump">$ 32,619,843<span></span>
</td>
<td class="nump">$ 34,518,257<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">7,738,216<span></span>
</td>
<td class="nump">9,275,893<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">40,358,059<span></span>
</td>
<td class="nump">43,794,150<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_CurrencyAxis=currency_USD', window );">United States dollar [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Bank accounts</a></td>
<td class="nump">15,888,445<span></span>
</td>
<td class="nump">14,001,264<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">5,324,258<span></span>
</td>
<td class="nump">5,796,582<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_CurrencyAxis=currency_KYD', window );">Cayman Islands dollar [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Bank accounts</a></td>
<td class="nump">12,784,358<span></span>
</td>
<td class="nump">5,650,874<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">2,413,958<span></span>
</td>
<td class="nump">2,413,547<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_CurrencyAxis=currency_BSD', window );">Bahamian dollar [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Bank accounts</a></td>
<td class="nump">3,944,208<span></span>
</td>
<td class="nump">14,863,287<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Short term deposits</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,065,764<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_CurrencyAxis=currency_BMD', window );">Bermudian dollar [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Cash', window );">Bank accounts</a></td>
<td class="nump">$ 2,832<span></span>
</td>
<td class="nump">$ 2,832<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_Cash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631418-115840<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Cash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsLineItems</td>
</tr>
<tr>
<td style="padding-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_CashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_srt_CurrencyAxis=currency_USD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_USD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CurrencyAxis=currency_KYD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_KYD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CurrencyAxis=currency_BSD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_BSD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_CurrencyAxis=currency_BMD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_BMD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772977832">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accounts receivable, net (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Accounts receivable, net.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AccountsReceivableTradeCurrent', window );">Trade accounts receivable</a></td>
<td class="nump">$ 27,409,029<span></span>
</td>
<td class="nump">$ 21,422,782<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DueFromAffiliateCurrent', window );">Receivable from OC-BVI</a></td>
<td class="nump">40,877<span></span>
</td>
<td class="nump">62,171<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AccountsReceivableOtherCurrent', window );">Other accounts receivable</a></td>
<td class="nump">180,262<span></span>
</td>
<td class="nump">269,133<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableGrossCurrent', window );">Accounts Receivable, Gross, Current</a></td>
<td class="nump">27,630,168<span></span>
</td>
<td class="nump">21,754,086<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for doubtful accounts</a></td>
<td class="num">(280,861)<span></span>
</td>
<td class="num">(270,110)<span></span>
</td>
<td class="num">$ (142,236)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">$ 27,349,307<span></span>
</td>
<td class="nump">$ 21,483,976<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_cwco_AccountsReceivableOtherCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of other receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AccountsReceivableOtherCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_AccountsReceivableTradeCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of trade receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AccountsReceivableTradeCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGrossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DueFromAffiliateCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of receivables due from an entity that is affiliated with the reporting entity by means of direct or indirect ownership, due within 1 year (or 1 business cycle).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=d3e56071-112765<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.3(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39599-107864<br><br>Reference 4: 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 http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DueFromAffiliateCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770842296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accounts receivable, net - Allowance for doubtful accounts (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ReceivablesAbstract', window );"><strong>Accounts receivable, net.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Opening allowance for doubtful accounts</a></td>
<td class="nump">$ 270,110<span></span>
</td>
<td class="nump">$ 142,236<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for doubtful accounts</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">129,107<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs', window );">Accounts written off during the year</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,233)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries', window );">Recovery of accounts written off</a></td>
<td class="nump">10,751<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Ending allowance for doubtful accounts</a></td>
<td class="nump">$ 280,861<span></span>
</td>
<td class="nump">$ 270,110<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_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AllowanceForDoubtfulAccountsReceivableRecoveries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in allowance for credit loss on accounts receivable, from recovery.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AllowanceForDoubtfulAccountsReceivableWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of direct write-downs of accounts receivable charged against the allowance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769093928">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventory (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryLineItems', window );"><strong>Inventory [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Total inventory</a></td>
<td class="nump">$ 7,237,842<span></span>
</td>
<td class="nump">$ 7,721,020<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Less current portion</a></td>
<td class="nump">2,504,832<span></span>
</td>
<td class="nump">3,214,178<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNoncurrent', window );">Inventory (non-current)</a></td>
<td class="nump">4,733,010<span></span>
</td>
<td class="nump">4,506,842<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=cwco_WaterStockMember', window );">Water stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryLineItems', window );"><strong>Inventory [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Total inventory</a></td>
<td class="nump">34,587<span></span>
</td>
<td class="nump">27,938<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=cwco_ConsumablesStockMember', window );">Consumables stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryLineItems', window );"><strong>Inventory [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Total inventory</a></td>
<td class="nump">138,547<span></span>
</td>
<td class="nump">105,540<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=cwco_SparePartsStockMember', window );">Spare parts stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryLineItems', window );"><strong>Inventory [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryGross', window );">Total inventory</a></td>
<td class="nump">$ 7,064,708<span></span>
</td>
<td class="nump">$ 7,587,542<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_InventoryGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InventoryLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryLineItems</td>
</tr>
<tr>
<td style="padding-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_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StatementClassOfStockAxis=cwco_WaterStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=cwco_WaterStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_ConsumablesStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=cwco_ConsumablesStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_SparePartsStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=cwco_SparePartsStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768835128">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contracts in progress (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems', window );"><strong>Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues recognized to date on contracts in process</a></td>
<td class="nump">$ 6,109,396<span></span>
</td>
<td class="nump">$ 17,534,449<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerAmountBilled', window );">Amounts billed to date on contracts in process</a></td>
<td class="num">(6,370,855)<span></span>
</td>
<td class="num">(17,791,928)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerRetainage', window );">Retainage</a></td>
<td class="nump">237,542<span></span>
</td>
<td class="nump">312,130<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerNetOverbillings', window );">Net contract asset</a></td>
<td class="num">(23,917)<span></span>
</td>
<td class="nump">54,651<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">489,961<span></span>
</td>
<td class="nump">516,521<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="num">(513,878)<span></span>
</td>
<td class="num">$ (461,870)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-31', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-12-31</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems', window );"><strong>Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue remaining performance obligation, Amount</a></td>
<td class="nump">$ 5,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-12-31', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-12-31</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems', window );"><strong>Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue remaining performance obligation, Amount</a></td>
<td class="nump">$ 4,800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-12-31', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-12-31</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems', window );"><strong>Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Revenue remaining performance obligation, Amount</a></td>
<td class="nump">$ 900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</a></td>
<td class="text">3 years<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_cwco_ContractWithCustomerAmountBilled">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount billed for contracts with customers during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ContractWithCustomerAmountBilled</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ContractWithCustomerNetOverbillings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net amount of overbillings for contracts with customers, during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ContractWithCustomerNetOverbillings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ContractWithCustomerRetainage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of retainage with contract for customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ContractWithCustomerRetainage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<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 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130533-203044<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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130531-203044<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 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123360276&amp;loc=SL49130532-203044<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 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 13<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130556-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-31">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2021-12-31</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-12-31">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2022-12-31</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-12-31">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-12-31</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>77
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765084472">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property, plant and equipment and construction in progress (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">$ 136,109,235<span></span>
</td>
<td class="nump">$ 135,071,263<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation</a></td>
<td class="nump">83,162,696<span></span>
</td>
<td class="nump">77,383,279<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net, Total</a></td>
<td class="nump">52,946,539<span></span>
</td>
<td class="nump">57,687,984<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction in progress</a></td>
<td class="nump">710,863<span></span>
</td>
<td class="nump">440,384<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember', window );">Land [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">3,316,537<span></span>
</td>
<td class="nump">3,566,537<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember', window );">Building [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">23,255,925<span></span>
</td>
<td class="nump">23,250,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="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember', window );">Plant And Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">64,324,377<span></span>
</td>
<td class="nump">63,734,860<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_DistributionSystemsMember', window );">Distribution Systems [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">39,780,272<span></span>
</td>
<td class="nump">39,149,063<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Office furniture, fixtures and equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">3,051,814<span></span>
</td>
<td class="nump">3,083,811<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">2,079,874<span></span>
</td>
<td class="nump">1,999,463<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">287,980<span></span>
</td>
<td class="nump">274,230<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember', window );">Lab equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property, Plant and Equipment, Gross</a></td>
<td class="nump">$ 12,456<span></span>
</td>
<td class="nump">$ 12,456<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionInProgressGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_PlantAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_PlantAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_DistributionSystemsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_DistributionSystemsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cwco_LabEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994772211464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property, plant and equipment and construction in progress - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, plant and equipment and construction in progress</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CapitalCommitments', window );">Capital Commitments</a></td>
<td class="nump">$ 2,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgressPlacedInService', window );">Construction In Progress Placed In Service</a></td>
<td class="nump">644,224<span></span>
</td>
<td class="nump">$ 1,653,501<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">$ 5,995,213<span></span>
</td>
<td class="nump">$ 6,335,489<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_CapitalCommitments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of capital commitments outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CapitalCommitments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ConstructionInProgressPlacedInService">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the amount of construction in progress placed in service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ConstructionInProgressPlacedInService</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994762500888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued operations - Mexico project development- Narratives (Details)<br> $ / shares in Units, gal in Millions</strong></div></th>
<th class="th" colspan="2"></th>
<th class="th" colspan="2"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="5">1 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Feb. 09, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Feb. 09, 2022 </div>
<div>MXN ($)</div>
</th>
<th class="th">
<div>Aug. 28, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Aug. 28, 2020 </div>
<div>MXN ($)</div>
</th>
<th class="th"><div>Jun. 29, 2020</div></th>
<th class="th">
<div>Aug. 22, 2016 </div>
<div>gal</div>
</th>
<th class="th">
<div>Sep. 30, 2021 </div>
<div>MXN ($)</div>
</th>
<th class="th">
<div>Feb. 28, 2014 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>May 31, 2013 </div>
<div>USD ($) </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Feb. 29, 2012 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>May 31, 2010 </div>
<div>gal</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2012 </div>
<div>USD ($) </div>
<div>ha</div>
</th>
<th class="th"><div>Feb. 28, 2018</div></th>
<th class="th"><div>Jan. 31, 2018</div></th>
<th class="th"><div>Aug. 31, 2016</div></th>
<th class="th"><div>Feb. 28, 2012</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses', window );">Number of days to submit list of non-recoverable expenses made</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">20 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LitigationSettlementExpense', window );">Litigation Settlement, Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 137,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairment loss on long-lived assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment', window );">Impairment loss for Mexico assets - discontinued operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 963,540<span></span>
</td>
<td class="nump">3,351,842<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PaymentsForOptionExercised', window );">Payments For Option Exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share Price | $ / shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LossContingencyDamagesSoughtValue', window );">Loss Contingency, Damages Sought, Value</a></td>
<td class="nump">$ 51,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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations | Mexico Project Development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment', window );">Impairment loss for Mexico assets - discontinued operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 963,540<span></span>
</td>
<td class="nump">$ 316,217<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=cwco_AguasDeRosaritoSapiDeCvMember', window );">Aguas de Rosarito S.A.P.I. de C.V [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=cwco_OptionAgreementMember', window );">Option 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PaymentsToEnterOptionAgreement', window );">Payments To Enter Option Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_NSCAguaMember', window );">NSC Agua [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners', window );">Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_TotalVotingInterestPercentageAfterConversionOfLoan', window );">Total Voting Interest Percentage After Conversion 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany', window );">Total Percentage Of Ownership Interest In An Acquired Company</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">99.99%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity', window );">Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal</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">100<span></span>
</td>
<td class="text">&#160;<span></span>
</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">100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AreaOfLand', window );">Area of Land | ha</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PeriodInWhichConstructionMustBeCompleted', window );">Period in which construction must be completed</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">36 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct', window );">Period Required To Operate And Maintain Plant And Aqueduct</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">37 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PaymentForLandAndRightOfWayHeldForDevelopment', window );">Payments for land and rights of way held for development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DiscontinuedOperationsNonRecoverableExpenses', window );">Amount of non-recoverable expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 51,144,525<span></span>
</td>
<td class="nump">$ 137,333,114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PaymentsForOptionExercised', window );">Payments For Option Exercised</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement', window );">Percentage of Voting Interest Acquired through Option Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_GuaranteeFee', window );">Guarantee amount required for suspension</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_NSCAguaMember', window );">NSC Agua [Member] | Aguas de Rosarito S.A.P.I. de C.V [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EquityMethodInvestmentOwnershipPercentage', window );">Equity Method Investment, 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">99.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_NSCAguaMember', window );">NSC Agua [Member] | First Phase [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity', window );">Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal</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">50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_NSCAguaMember', window );">NSC Agua [Member] | Second Phase [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity', window );">Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity | gal</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">50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_OwnershipAxis=cwco_NSCAguaMember', window );">NSC Agua [Member] | Option 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInvestmentsLineItems', window );"><strong>Schedule of 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_TotalVotingInterestPercentageAfterConversionOfLoan', window );">Total Voting Interest Percentage After Conversion 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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">99.99%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RepaymentOfInterCompanyLoanPayable', window );">Repayment of inter-company loan payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OptionAgreementExpirationDate', window );">Option Agreement Expiration 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">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Feb.  07,  2014<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></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_cwco_DiscontinuedOperationsNonRecoverableExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Refers to non-recoverable expense in discontinued operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DiscontinuedOperationsNonRecoverableExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of impairment attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_GuaranteeFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of fee related to guarantee of suspension.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_GuaranteeFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of days to submit list of non-recoverable expenses made.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_OptionAgreementExpirationDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expiration date of the option agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OptionAgreementExpirationDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PaymentForLandAndRightOfWayHeldForDevelopment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PaymentForLandAndRightOfWayHeldForDevelopment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PaymentsForOptionExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow associated with the option exercised by the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PaymentsForOptionExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PaymentsToEnterOptionAgreement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the amount spent to enter a stock option agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PaymentsToEnterOptionAgreement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting interest acquired through Option agreements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PeriodInWhichConstructionMustBeCompleted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The period in which construction must be completed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PeriodInWhichConstructionMustBeCompleted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The period required to operate and maintain the plant and aqueduct.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_RepaymentOfInterCompanyLoanPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the repayment of an inter-company loan payable through the issuance of shares of subsidiary stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_RepaymentOfInterCompanyLoanPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The processing capacity per day seawater reverse osmosis desalination plant.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:volumeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total percentage of ownership interest in an acquired company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_TotalVotingInterestPercentageAfterConversionOfLoan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total percentage of ownership interest in an acquired company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TotalVotingInterestPercentageAfterConversionOfLoan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AreaOfLand">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area of land held.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AreaOfLand</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityMethodInvestmentOwnershipPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityMethodInvestmentOwnershipPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2921-110230<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 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2420-110228<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentOfLongLivedAssetsHeldForUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LitigationSettlementExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LitigationSettlementExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LossContingencyDamagesSoughtValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The value (monetary amount) of the award the plaintiff seeks in the legal matter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14557-108349<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14435-108349<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingencyDamagesSoughtValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_MinorityInterestOwnershipPercentageByNoncontrollingOwners">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInvestmentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInvestmentsLineItems</td>
</tr>
<tr>
<td style="padding-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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_AguasDeRosaritoSapiDeCvMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=cwco_AguasDeRosaritoSapiDeCvMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_OptionAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=cwco_OptionAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_NSCAguaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_OwnershipAxis=cwco_NSCAguaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_TypeOfPhasesAxis=cwco_FirstPhaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TypeOfPhasesAxis=cwco_FirstPhaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_TypeOfPhasesAxis=cwco_SecondPhaseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TypeOfPhasesAxis=cwco_SecondPhaseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768870040">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Discontinued operations - Mexico project development (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation', window );">Total assets of discontinued operations</a></td>
<td class="nump">$ 22,319,927<span></span>
</td>
<td class="nump">$ 22,677,588<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations | Mexico Project Development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents', window );">Cash</a></td>
<td class="nump">750,048<span></span>
</td>
<td class="nump">154,130<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">82,783<span></span>
</td>
<td class="nump">88,978<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable', window );">Value added taxes receivable (net of allowance of $967,115 and $316,217, respectively)</a></td>
<td class="nump">340,910<span></span>
</td>
<td class="nump">1,267,991<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent', window );">Property, plant and equipment, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,682<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay', window );">Land</a></td>
<td class="nump">21,126,898<span></span>
</td>
<td class="nump">21,126,898<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="nump">19,288<span></span>
</td>
<td class="nump">33,909<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation', window );">Total assets of discontinued operations</a></td>
<td class="nump">22,319,927<span></span>
</td>
<td class="nump">22,677,588<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation', window );">Total liabilities of discontinued operations</a></td>
<td class="nump">190,141<span></span>
</td>
<td class="nump">190,933<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ValueAddedTaxReceivableAllowance', window );">Value added tax, net of allowance</a></td>
<td class="nump">$ 1,279,757<span></span>
</td>
<td class="nump">$ 316,217<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as land and rights of way, attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of disposal group, including discontinued operation, value added taxes receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_ValueAddedTaxReceivableAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on value added taxes receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ValueAddedTaxReceivableAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AssetsOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 6: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as cash and cash equivalents attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as other assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2510-110228<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 5: 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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2473-110228<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2510-110228<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<br><br>Reference 3: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>81
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768924952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Discontinued operations - Financial Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncomeLossFromDiscontinuedOperations', window );">Net loss from discontinued operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,902,243<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations | Mexico Project Development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems', window );"><strong>Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncomeLossFromDiscontinuedOperations', window );">Net loss from discontinued operations</a></td>
<td class="nump">$ 2,574,079<span></span>
</td>
<td class="nump">4,902,243<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization', window );">Depreciation expense</a></td>
<td class="nump">$ 4,545<span></span>
</td>
<td class="nump">$ 4,545<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_IncomeLossFromDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from a discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncomeLossFromDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of depreciation and amortization expense attributable to disposal group, including, but not limited to, discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems</td>
</tr>
<tr>
<td style="padding-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_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=cwco_MexicoProjectDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765100104">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible assets - Costs and accumulated amortization (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract', window );"><strong>Cost</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">$ 5,790,000<span></span>
</td>
<td class="nump">$ 5,790,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentForAmortizationAbstract', window );"><strong>Accumulated amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-Lived Intangible Assets, Accumulated Amortization</a></td>
<td class="num">(2,388,334)<span></span>
</td>
<td class="num">(1,641,667)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">3,401,666<span></span>
</td>
<td class="nump">4,148,333<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Non-compete agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract', window );"><strong>Cost</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">530,000<span></span>
</td>
<td class="nump">530,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentForAmortizationAbstract', window );"><strong>Accumulated amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-Lived Intangible Assets, Accumulated Amortization</a></td>
<td class="num">(493,889)<span></span>
</td>
<td class="num">(443,889)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_TradeNameMember', window );">Trade names</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract', window );"><strong>Cost</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">2,700,000<span></span>
</td>
<td class="nump">2,700,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentForAmortizationAbstract', window );"><strong>Accumulated amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-Lived Intangible Assets, Accumulated Amortization</a></td>
<td class="num">(740,000)<span></span>
</td>
<td class="num">(560,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_CustomerBacklogMember', window );">Customer backlogs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract', window );"><strong>Cost</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">360,000<span></span>
</td>
<td class="nump">360,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="top.Show.showAR( this, 'defref_us-gaap_AdjustmentForAmortizationAbstract', window );"><strong>Accumulated amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-Lived Intangible Assets, Accumulated Amortization</a></td>
<td class="num">(360,000)<span></span>
</td>
<td class="num">(210,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_ManagementContractsMember', window );">Facility management contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract', window );"><strong>Cost</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">2,200,000<span></span>
</td>
<td class="nump">2,200,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentForAmortizationAbstract', window );"><strong>Accumulated amortization</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Finite-Lived Intangible Assets, Accumulated Amortization</a></td>
<td class="num">$ (794,445)<span></span>
</td>
<td class="num">$ (427,778)<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_AdjustmentForAmortizationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentForAmortizationAbstract</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract</td>
</tr>
<tr>
<td style="padding-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_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_TradeNameMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_TradeNameMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_CustomerBacklogMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_CustomerBacklogMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_ManagementContractsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cwco_ManagementContractsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994774622728">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible assets - Amortization of intangible assets (Details)<br></strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 582,778<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2023</a></td>
<td class="nump">546,667<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2024</a></td>
<td class="nump">546,667<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2025</a></td>
<td class="nump">485,554<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2026</a></td>
<td class="nump">180,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Thereafter</a></td>
<td class="nump">1,060,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite Lived Intangible Assets Net</a></td>
<td class="nump">$ 3,401,666<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770647416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible assets (Details) - 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>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 31, 2019</div></th>
<th class="th"><div>Feb. 29, 2016</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Aug. 11, 2020</div></th>
<th class="th"><div>Jan. 24, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of Intangible Assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 746,667<span></span>
</td>
<td class="nump">$ 891,667<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Non-compete agreement | 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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember', window );">Non-compete agreement | 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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember', window );">Aerex</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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business Acquisition, Percentage of Voting Interests Acquired</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">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="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired', window );">Business Acquisition, Percentage of Voting Interests Acquired</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">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation | Customer-Related Intangible Assets [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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</a></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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation | Customer relationships</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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</a></td>
<td class="text">6 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="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember', window );">Trade name</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="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Finite-Lived Intangible Assets [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">15 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>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 1<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16265-109275<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of voting equity interests acquired at the acquisition date in the business combination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired</td>
</tr>
<tr>
<td style="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_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_NoncompeteAgreementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_AerexIndustriesIncMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelatedIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994762366824">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Lease assets and liabilities (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent', window );">Current assets of discontinued operations</a></td>
<td class="nump">$ 2,654<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsNoncurrentAbstract', window );"><strong>Noncurrent</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">2,681,137<span></span>
</td>
<td class="nump">$ 1,329,561<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent', window );">Long-term assets of discontinued operations</a></td>
<td class="nump">16,898<span></span>
</td>
<td class="nump">33,909<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseRightOfUseAssetNet', window );">Total lease right-of-use assets</a></td>
<td class="nump">2,700,689<span></span>
</td>
<td class="nump">1,471,773<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current maturities of operating leases</a></td>
<td class="nump">592,336<span></span>
</td>
<td class="nump">455,788<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities', window );">Current liabilities of discontinued operations</a></td>
<td class="nump">11,195<span></span>
</td>
<td class="nump">29,432<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrentAbstract', window );"><strong>Noncurrent</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Noncurrent operating leases</a></td>
<td class="nump">2,137,394<span></span>
</td>
<td class="nump">982,076<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent', window );">Noncurrent liabilities of discontinued operations</a></td>
<td class="nump">7,819<span></span>
</td>
<td class="nump">2,499<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations', window );">Total lease liabilities</a></td>
<td class="nump">$ 2,748,744<span></span>
</td>
<td class="nump">$ 1,469,795<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating leases, weighted average remaining lease term</a></td>
<td class="text">7 years<span></span>
</td>
<td class="text">3 years 4 months 24 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating leases, weighted average discount rate</a></td>
<td class="nump">5.03%<span></span>
</td>
<td class="nump">4.15%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrentAbstract', window );"><strong>Noncurrent</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating leases, weighted average remaining lease term</a></td>
<td class="text">1 year 7 months 6 days<span></span>
</td>
<td class="text">1 year 1 month 6 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating leases, weighted average discount rate</a></td>
<td class="nump">4.77%<span></span>
</td>
<td class="nump">3.48%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember', window );">Prepaid Expenses and Other Current Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseAssetsCurrent', window );">Operating lease assets, current</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 108,303<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_OperatingLeaseAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of Operating Lease Assets Current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, including discontinued operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_OperatingLeaseRightOfUseAssetNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset net under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseRightOfUseAssetNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesNoncurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 4: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2510-110228<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="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_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><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)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>86
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770742040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Components of lease cost (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease costs</a></td>
<td class="nump">$ 656,130<span></span>
</td>
<td class="nump">$ 773,756<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShortTermLeaseCost', window );">Short-term lease costs</a></td>
<td class="nump">79,606<span></span>
</td>
<td class="nump">5,518<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseCostsDiscontinuedOperations', window );">Lease costs - discontinued operations</a></td>
<td class="nump">31,281<span></span>
</td>
<td class="nump">127,983<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease costs</a></td>
<td class="nump">$ 767,017<span></span>
</td>
<td class="nump">$ 907,257<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_OperatingLeaseCostsDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease cost related to discontinued operations, excluding expense for lease with term of one month or less.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseCostsDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><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 (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>87
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994773063864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Supplemental cash flow information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash outflows for operating leases</a></td>
<td class="nump">$ 710,024<span></span>
</td>
<td class="nump">$ 708,095<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseDiscontinuedOperationsPayments', window );">Operating cash flows from operating leases - discontinued operations</a></td>
<td class="nump">$ 38,246<span></span>
</td>
<td class="nump">$ 127,153<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_OperatingLeaseDiscontinuedOperationsPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease discontinued operations, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseDiscontinuedOperationsPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765570344">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Future lease payments (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2022</a></td>
<td class="nump">$ 665,817<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2023</a></td>
<td class="nump">643,234<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2024</a></td>
<td class="nump">390,629<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2025</a></td>
<td class="nump">268,056<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2026</a></td>
<td class="nump">227,541<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">1,025,239<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future lease payments</a></td>
<td class="nump">3,220,516<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: imputed interest</a></td>
<td class="num">(490,786)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_OperatingLeaseLiabilitiesContinuingOperations', window );">Total lease obligations</a></td>
<td class="nump">2,729,730<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Less: current obligations</a></td>
<td class="num">(592,336)<span></span>
</td>
<td class="num">$ (455,788)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Noncurrent lease obligations</a></td>
<td class="nump">$ 2,137,394<span></span>
</td>
<td class="nump">$ 982,076<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_OperatingLeaseLiabilitiesContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_OperatingLeaseLiabilitiesContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769090600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes - Components of income before income taxes (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes', window );">Foreign (not subject to income taxes)</a></td>
<td class="nump">$ 5,780,692<span></span>
</td>
<td class="nump">$ 6,475,693<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Mexico</a></td>
<td class="num">(1,767,915)<span></span>
</td>
<td class="num">(4,903,988)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">United States</a></td>
<td class="num">(2,952,265)<span></span>
</td>
<td class="nump">2,956,552<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments', window );">Income before income taxes</a></td>
<td class="nump">1,060,512<span></span>
</td>
<td class="nump">4,528,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="top.Show.showAR( this, 'defref_cwco_IncomeLossFromDiscontinuedOperations', window );">Less discontinued operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,902,243<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">$ 3,634,591<span></span>
</td>
<td class="nump">$ 9,430,500<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations that are not subject to income tax, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_IncomeLossFromDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from a discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_IncomeLossFromDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>90
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765174600">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes - Provision for income taxes (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract', window );"><strong>Current:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 202,444<span></span>
</td>
<td class="nump">$ 191,322<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="num">(895)<span></span>
</td>
<td class="nump">87,630<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Total</a></td>
<td class="nump">201,549<span></span>
</td>
<td class="nump">278,952<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract', window );"><strong>Deferred:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="num">(524,733)<span></span>
</td>
<td class="num">(132,957)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="num">(124,798)<span></span>
</td>
<td class="num">(59,271)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxesAndTaxCredits', window );">Total</a></td>
<td class="num">(649,531)<span></span>
</td>
<td class="num">(192,228)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Total provision</a></td>
<td class="num">$ (447,982)<span></span>
</td>
<td class="nump">$ 86,724<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_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract</td>
</tr>
<tr>
<td style="padding-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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredIncomeTaxesAndTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) and income tax credits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxesAndTaxCredits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765173672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes - Reconciliation of federal tax rate to the effective rate (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">U.S. statutory federal rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes', window );">State taxes, net of federal effect</a></td>
<td class="nump">2.72%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential', window );">Nontaxable foreign income</a></td>
<td class="num">(43.36%)<span></span>
</td>
<td class="num">(17.28%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch', window );">Research &amp; Development Tax Credit</a></td>
<td class="num">(7.39%)<span></span>
</td>
<td class="num">(11.73%)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EffectiveIncomeTaxRateReconciliationPermanentItems', window );">Permanent items</a></td>
<td class="num">(6.26%)<span></span>
</td>
<td class="num">(0.67%)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent', window );">Goodwill impairment</a></td>
<td class="nump">20.31%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Valuation allowance for deferred tax assets</a></td>
<td class="nump">0.65%<span></span>
</td>
<td class="nump">5.60%<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective Income Tax Rate Reconciliation, Percent</a></td>
<td class="num">(12.33%)<span></span>
</td>
<td class="nump">0.92%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to goodwill impairment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_EffectiveIncomeTaxRateReconciliationPermanentItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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 Permanent items.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EffectiveIncomeTaxRateReconciliationPermanentItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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 changes in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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 applicable to statutory income tax expense (benefit) outside of the country of domicile.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br><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.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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 applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="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_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of 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 research tax credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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.Fact.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32687-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch</td>
</tr>
<tr>
<td style="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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765582632">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income taxes - Net long-term deferred tax liability (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNetAbstract', window );"><strong>Deferred tax assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch', window );">Research &amp; development tax credits</a></td>
<td class="nump">$ 398,413<span></span>
</td>
<td class="nump">$ 613,003<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsCapitalLossCarryforwards', window );">Loss carry forward</a></td>
<td class="nump">300,545<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities', window );">Accrued compensation</a></td>
<td class="nump">112,446<span></span>
</td>
<td class="nump">110,092<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowances</a></td>
<td class="num">(139,207)<span></span>
</td>
<td class="num">(496,343)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Deferred Tax Assets, Net of Valuation Allowance</a></td>
<td class="nump">672,197<span></span>
</td>
<td class="nump">226,752<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesNetAbstract', window );"><strong>Deferred tax liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="nump">254,301<span></span>
</td>
<td class="nump">252,800<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangible assets</a></td>
<td class="nump">982,422<span></span>
</td>
<td class="nump">1,188,009<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilities', window );">Deferred Tax Liabilities, Gross</a></td>
<td class="nump">1,236,723<span></span>
</td>
<td class="nump">1,440,809<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Net deferred tax liability</a></td>
<td class="nump">564,526<span></span>
</td>
<td class="nump">1,214,057<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNetAbstract', window );"><strong>Deferred tax assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign', window );">Operating loss carryforwards - Mexico</a></td>
<td class="nump">4,230,398<span></span>
</td>
<td class="nump">4,296,453<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DeferredTaxAssetsLandBasisDifference', window );">Land basis difference - Mexico</a></td>
<td class="nump">1,602,470<span></span>
</td>
<td class="nump">1,262,159<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DeferredTaxAssetsStartupCosts', window );">Start-up costs - Mexico</a></td>
<td class="nump">4,693,395<span></span>
</td>
<td class="nump">4,904,337<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowances</a></td>
<td class="num">(10,526,263)<span></span>
</td>
<td class="num">(10,462,949)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsNet', window );">Deferred Tax Assets, Net of Valuation Allowance</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_cwco_DeferredTaxAssetsLandBasisDifference">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to land basis differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DeferredTaxAssetsLandBasisDifference</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_DeferredTaxAssetsStartupCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to start-up costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DeferredTaxAssetsStartupCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<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(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<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(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsCapitalLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsCapitalLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_DeferredTaxAssetsNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsNetAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsOperatingLossCarryforwardsForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsTaxCreditCarryforwardsResearch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br><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 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/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 http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DeferredTaxLiabilitiesNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesNetAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770542200">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income taxes - Additional Information (Details)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating Loss Carryforwards</a></td>
<td class="nump">$ 14.1<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Domestic Tax Authority [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating Loss Carryforwards</a></td>
<td class="nump">1.2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State and Local Jurisdiction [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating Loss Carryforwards</a></td>
<td class="nump">$ 1.1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisposalGroupClassificationAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769832088">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">$ 3,449,658<span></span>
</td>
<td class="nump">$ 8,613,771<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsPreferredStock', window );">Less: preferred stock dividends</a></td>
<td class="num">(10,796)<span></span>
</td>
<td class="num">(11,740)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic', window );">Net income from continuing operations available to common shares in the determination of basic earnings per common share</a></td>
<td class="nump">3,438,862<span></span>
</td>
<td class="nump">8,602,031<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax', window );">Total loss from discontinued operations</a></td>
<td class="num">(2,574,079)<span></span>
</td>
<td class="num">(4,902,243)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic', window );">Net income (loss) available to common shares in the determination of basic earnings per common share</a></td>
<td class="nump">$ 864,783<span></span>
</td>
<td class="nump">$ 3,699,788<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders (in shares)</a></td>
<td class="nump">15,213,816<span></span>
</td>
<td class="nump">15,119,305<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock', window );">Weighted average number of preferred shares outstanding during the period (in shares)</a></td>
<td class="nump">30,348<span></span>
</td>
<td class="nump">33,814<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants', window );">Potential dilutive effect of unexercised options and unvested stock grants</a></td>
<td class="nump">65,981<span></span>
</td>
<td class="nump">70,836<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders</a></td>
<td class="nump">15,310,145<span></span>
</td>
<td class="nump">15,223,955<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_DividendsPreferredStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid preferred stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 405<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6957935&amp;loc=d3e64057-112817<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPreferredStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4613673-111683<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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 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 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 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 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromDiscontinuedOperationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109227538&amp;loc=d3e44648-109337<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncrementalCommonSharesAttributableToCallOptionsAndWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of call options and warrants using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 26<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1828-109256<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 23<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1757-109256<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 45<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1707-109256<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 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants</td>
</tr>
<tr>
<td style="padding-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_IncrementalCommonSharesAttributableToConversionOfPreferredStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of convertible preferred stock using the if-converted method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e2029-109256<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 45<br> -Paragraph 40<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1930-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock</td>
</tr>
<tr>
<td style="padding-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_NetIncomeLossAvailableToCommonStockholdersBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br><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 (a)<br> -URI http://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 11<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1377-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 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 (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&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 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<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 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<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 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) from continuing operations available to common shareholders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1377-109256<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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1505-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1448-109256<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<FILENAME>R79.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765609048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Dividends (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsAbstract', window );"><strong>Dividends.</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_DividendsPerShareDeclared', window );">Dividends Per Share Declared</a></td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.085<span></span>
</td>
<td class="nump">$ 0.34<span></span>
</td>
<td class="nump">$ 0.34<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_DividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends declared during the period for each share of common stock and redeemable preferred stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_DividendsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsAbstract</td>
</tr>
<tr>
<td style="padding-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>96
<FILENAME>R80.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769945032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>segment</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfReportableSegments', window );">Number of Reportable Segments | segment</a></td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 66,863,502<span></span>
</td>
<td class="nump">$ 72,628,126<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">43,356,311<span></span>
</td>
<td class="nump">45,859,671<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">23,507,191<span></span>
</td>
<td class="nump">26,768,455<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses</a></td>
<td class="nump">18,350,359<span></span>
</td>
<td class="nump">18,434,898<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="num">(3,145,836)<span></span>
</td>
<td class="nump">13,997<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">2,010,996<span></span>
</td>
<td class="nump">8,347,554<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other income, net</a></td>
<td class="nump">1,623,595<span></span>
</td>
<td class="nump">1,082,946<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">3,634,591<span></span>
</td>
<td class="nump">9,430,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="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Benefit from income taxes</a></td>
<td class="num">(447,982)<span></span>
</td>
<td class="nump">86,724<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest', window );">Net income from continuing operations</a></td>
<td class="nump">4,082,573<span></span>
</td>
<td class="nump">9,343,776<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity', window );">Income from continuing operations attributable to non-controlling interests</a></td>
<td class="nump">632,915<span></span>
</td>
<td class="nump">730,005<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">3,449,658<span></span>
</td>
<td class="nump">8,613,771<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax', window );">Net loss from discontinued operations</a></td>
<td class="num">(2,574,079)<span></span>
</td>
<td class="num">(4,902,243)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to Consolidated Water Co. Ltd. stockholders</a></td>
<td class="nump">875,579<span></span>
</td>
<td class="nump">3,711,528<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">27,349,307<span></span>
</td>
<td class="nump">21,483,976<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_InventoryCurrentAndNoncurrent', window );">Inventory, current and non-current</a></td>
<td class="nump">7,237,842<span></span>
</td>
<td class="nump">7,721,020<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">52,946,539<span></span>
</td>
<td class="nump">57,687,984<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgress', window );">Construction in progress</a></td>
<td class="nump">710,863<span></span>
</td>
<td class="nump">440,384<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangibles, net</a></td>
<td class="nump">3,401,666<span></span>
</td>
<td class="nump">4,148,333<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">10,425,013<span></span>
</td>
<td class="nump">13,325,013<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AssetsContinuedOperation', window );">Total segment assets</a></td>
<td class="nump">154,707,127<span></span>
</td>
<td class="nump">156,877,964<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation', window );">Assets of discontinued operations</a></td>
<td class="nump">22,319,927<span></span>
</td>
<td class="nump">22,677,588<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">177,027,054<span></span>
</td>
<td class="nump">179,555,552<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember', window );">Retail [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">22,104,953<span></span>
</td>
<td class="nump">22,952,370<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">11,060,937<span></span>
</td>
<td class="nump">11,080,814<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">11,044,016<span></span>
</td>
<td class="nump">11,871,556<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses</a></td>
<td class="nump">12,841,259<span></span>
</td>
<td class="nump">12,879,445<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="num">(246,851)<span></span>
</td>
<td class="nump">2,965<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="num">(2,044,094)<span></span>
</td>
<td class="num">(1,004,924)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">2,601,619<span></span>
</td>
<td class="nump">2,444,455<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_InventoryCurrentAndNoncurrent', window );">Inventory, current and non-current</a></td>
<td class="nump">2,787,277<span></span>
</td>
<td class="nump">2,787,163<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">26,357,390<span></span>
</td>
<td class="nump">27,947,545<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgress', window );">Construction in progress</a></td>
<td class="nump">617,334<span></span>
</td>
<td class="nump">305,110<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">1,170,511<span></span>
</td>
<td class="nump">1,170,511<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AssetsContinuedOperation', window );">Total segment assets</a></td>
<td class="nump">61,736,441<span></span>
</td>
<td class="nump">56,425,159<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember', window );">Bulk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">26,800,869<span></span>
</td>
<td class="nump">24,312,546<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">17,759,272<span></span>
</td>
<td class="nump">16,959,563<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">9,041,597<span></span>
</td>
<td class="nump">7,352,983<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses</a></td>
<td class="nump">1,365,735<span></span>
</td>
<td class="nump">1,260,062<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="nump">1,500<span></span>
</td>
<td class="nump">7,213<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">7,677,362<span></span>
</td>
<td class="nump">6,100,134<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">21,682,951<span></span>
</td>
<td class="nump">17,022,813<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_InventoryCurrentAndNoncurrent', window );">Inventory, current and non-current</a></td>
<td class="nump">3,860,808<span></span>
</td>
<td class="nump">3,795,544<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">24,476,936<span></span>
</td>
<td class="nump">27,611,567<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgress', window );">Construction in progress</a></td>
<td class="nump">31,737<span></span>
</td>
<td class="nump">31,737<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">1,948,875<span></span>
</td>
<td class="nump">1,948,875<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AssetsContinuedOperation', window );">Total segment assets</a></td>
<td class="nump">68,723,405<span></span>
</td>
<td class="nump">74,771,798<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember', window );">Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">13,884,857<span></span>
</td>
<td class="nump">12,937,859<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">10,707,243<span></span>
</td>
<td class="nump">9,698,214<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">3,177,614<span></span>
</td>
<td class="nump">3,239,645<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses</a></td>
<td class="nump">2,762,735<span></span>
</td>
<td class="nump">2,834,917<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="num">(485)<span></span>
</td>
<td class="nump">3,801<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">414,394<span></span>
</td>
<td class="nump">408,529<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">1,698,797<span></span>
</td>
<td class="nump">1,420,609<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">512,493<span></span>
</td>
<td class="nump">487,973<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangibles, net</a></td>
<td class="nump">2,553,888<span></span>
</td>
<td class="nump">3,200,555<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">5,320,416<span></span>
</td>
<td class="nump">5,320,416<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AssetsContinuedOperation', window );">Total segment assets</a></td>
<td class="nump">16,049,001<span></span>
</td>
<td class="nump">14,470,322<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember', window );">Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">4,072,823<span></span>
</td>
<td class="nump">12,425,351<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">3,828,859<span></span>
</td>
<td class="nump">8,121,080<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">243,964<span></span>
</td>
<td class="nump">4,304,271<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative expenses</a></td>
<td class="nump">1,380,630<span></span>
</td>
<td class="nump">1,460,474<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges', window );">Gain (loss) on asset dispositions and impairments, net</a></td>
<td class="num">(2,900,000)<span></span>
</td>
<td class="nump">18<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="num">(4,036,666)<span></span>
</td>
<td class="nump">2,843,815<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">1,365,940<span></span>
</td>
<td class="nump">596,099<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_InventoryCurrentAndNoncurrent', window );">Inventory, current and non-current</a></td>
<td class="nump">589,757<span></span>
</td>
<td class="nump">1,138,313<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">1,599,720<span></span>
</td>
<td class="nump">1,640,899<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ConstructionInProgress', window );">Construction in progress</a></td>
<td class="nump">61,792<span></span>
</td>
<td class="nump">103,537<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangibles, net</a></td>
<td class="nump">847,778<span></span>
</td>
<td class="nump">947,778<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">1,985,211<span></span>
</td>
<td class="nump">4,885,211<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AssetsContinuedOperation', window );">Total segment assets</a></td>
<td class="nump">$ 8,198,280<span></span>
</td>
<td class="nump">$ 11,210,685<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_AssetsContinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to continued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AssetsContinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_ConstructionInProgress">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ConstructionInProgress</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_InventoryCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of inventory current and non current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_InventoryCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount classified as assets attributable to disposal group held for sale or disposed of.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1107-107759<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 3<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&amp;loc=d3e2941-110230<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721673-107760<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721533-107759<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 6: 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 5C<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 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)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 5: 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)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 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)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GainLossOnSalesOfAssetsAndAssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) from the difference between the sale price or salvage price and the book value of an asset that was sold or retired, and gain (loss) from the write down of assets from their carrying value to fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4613673-111683<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 (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 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 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<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 http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<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.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 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 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 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 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 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)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&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 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 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 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeLossFromDiscontinuedOperationsNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3B<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721525-107759<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721675-107760<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e957-107759<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=d3e1361-107760<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=SL51721523-107759<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109222160&amp;loc=d3e1012-107759<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109227538&amp;loc=d3e44648-109337<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8672-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&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 http://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 http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123359005&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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994762263592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Revenues earned by major geographic region and major customer (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 66,863,502<span></span>
</td>
<td class="nump">$ 72,628,126<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_KY', window );">Cayman Islands [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">24,935,746<span></span>
</td>
<td class="nump">25,640,169<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BS', window );">Bahamas [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">24,031,547<span></span>
</td>
<td class="nump">21,654,153<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">17,489,851<span></span>
</td>
<td class="nump">24,918,527<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_VG', window );">Management Services Agreement With OC-BVI [Membre]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">406,358<span></span>
</td>
<td class="nump">415,277<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cwco_WaterAndSewerageCorporationMember', window );">Water and Sewerage Corporation [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 24,031,547<span></span>
</td>
<td class="nump">$ 21,527,487<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EntityWideRevenuesMajorCustomerPercentage', window );">Percentage of consolidated revenues</a></td>
<td class="nump">36.00%<span></span>
</td>
<td class="nump">30.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cwco_OneCustomerMember', window );">One Customer [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenue</a></td>
<td class="nump">$ 406,073<span></span>
</td>
<td class="nump">$ 9,965,041<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EntityWideRevenuesMajorCustomerPercentage', window );">Percentage of consolidated revenues</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">14.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_EntityWideRevenuesMajorCustomerPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of revenue generated from a single external customer that accounts for 10 percent or more of an entity's revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EntityWideRevenuesMajorCustomerPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&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 http://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 http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123359005&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 http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=124359900&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 http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_KY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_KY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BS">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_BS</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_VG">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_VG</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_WaterAndSewerageCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=cwco_WaterAndSewerageCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_OneCustomerMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=cwco_OneCustomerMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R82.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994766031624">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Segment information - Property, plant and equipment, net by major geographic region (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net</a></td>
<td class="nump">$ 52,946,539<span></span>
</td>
<td class="nump">$ 57,687,984<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_KY', window );">Cayman Islands [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net</a></td>
<td class="nump">26,687,944<span></span>
</td>
<td class="nump">28,474,748<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_BS', window );">Bahamas [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net</a></td>
<td class="nump">24,004,707<span></span>
</td>
<td class="nump">26,975,427<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, Plant and Equipment, Net</a></td>
<td class="nump">$ 2,253,888<span></span>
</td>
<td class="nump">$ 2,237,809<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_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_KY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_KY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_BS">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_BS</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>R83.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994768749880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment information - Additional Information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember', window );">Retail [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation, Depletion and Amortization</a></td>
<td class="nump">$ 2,517,407<span></span>
</td>
<td class="nump">$ 2,388,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="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember', window );">Bulk [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation, Depletion and Amortization</a></td>
<td class="nump">3,331,554<span></span>
</td>
<td class="nump">3,869,377<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember', window );">Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation, Depletion and Amortization</a></td>
<td class="nump">782,882<span></span>
</td>
<td class="nump">762,182<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember', window );">Manufacturing Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SegmentReportingInformationLineItems', window );"><strong>Segment Reporting Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation, Depletion and Amortization</a></td>
<td class="nump">$ 289,390<span></span>
</td>
<td class="nump">$ 386,169<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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-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_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_SegmentRetailMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_BulkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_BulkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementBusinessSegmentsAxis=cwco_ManufacturingUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>100
<FILENAME>R84.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771949912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cost of revenues and general and administrative expenses - Cost of revenues (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">$ 43,356,311<span></span>
</td>
<td class="nump">$ 45,859,671<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_ElectricityMember', window );">Electricity [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">5,698,148<span></span>
</td>
<td class="nump">5,389,361<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DepreciationMember', window );">Depreciation [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">5,855,073<span></span>
</td>
<td class="nump">6,202,012<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_FuelOilMember', window );">Fuel oil [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">5,742,056<span></span>
</td>
<td class="nump">4,157,393<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_EmployeeCostsMember', window );">Employee costs [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">12,439,042<span></span>
</td>
<td class="nump">11,465,514<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_MaintenanceMember', window );">Maintenance [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">2,092,776<span></span>
</td>
<td class="nump">2,859,262<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_RoyaltiesMember', window );">Retail license royalties [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">1,418,820<span></span>
</td>
<td class="nump">1,489,862<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_InsuranceMember', window );">Insurance [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">1,625,862<span></span>
</td>
<td class="nump">1,491,799<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_MaterialsMember', window );">Materials [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">1,952,764<span></span>
</td>
<td class="nump">5,786,698<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_OtherExpenseMember', window );">Other [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of revenue</a></td>
<td class="nump">$ 6,531,770<span></span>
</td>
<td class="nump">$ 7,017,770<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 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)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 5: 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)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 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)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 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)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ConcentrationRiskByBenchmarkAxis=us-gaap_ElectricityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_ElectricityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_DepreciationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DepreciationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_FuelOilMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_FuelOilMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_EmployeeCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_EmployeeCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_MaintenanceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_MaintenanceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_RoyaltiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_RoyaltiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_InsuranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_InsuranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_MaterialsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_MaterialsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OtherExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_OtherExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>101
<FILENAME>R85.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994762429448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cost of revenues and general and administrative expenses - General and administrative expenses (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">$ 18,350,359<span></span>
</td>
<td class="nump">$ 18,434,898<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_EmployeeCostsMember', window );">Employee costs [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">9,562,125<span></span>
</td>
<td class="nump">10,086,588<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_InsuranceMember', window );">Insurance [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">1,813,026<span></span>
</td>
<td class="nump">1,436,957<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_ProfessionalsFeeMember', window );">Professional fees [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">1,506,423<span></span>
</td>
<td class="nump">1,488,948<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DirectorsFeesAndExpensesMember', window );">Directors' fees and expenses [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">851,775<span></span>
</td>
<td class="nump">865,555<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DepreciationMember', window );">Depreciation [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">140,140<span></span>
</td>
<td class="nump">133,477<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_AmortizationOfIntangiblesMember', window );">Amortization of intangibles [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">746,667<span></span>
</td>
<td class="nump">891,667<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_OtherCreditDeviceMember', window );">Other [Member].</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems', window );"><strong>Cost of revenues and general and administrative expenses [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and Administrative Expense</a></td>
<td class="nump">$ 3,730,203<span></span>
</td>
<td class="nump">$ 3,531,706<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ConcentrationRiskByBenchmarkAxis=cwco_EmployeeCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_EmployeeCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_InsuranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_InsuranceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_ProfessionalsFeeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_ProfessionalsFeeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_DirectorsFeesAndExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DirectorsFeesAndExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_DepreciationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_DepreciationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_AmortizationOfIntangiblesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_AmortizationOfIntangiblesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_OtherCreditDeviceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=cwco_OtherCreditDeviceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>102
<FILENAME>R86.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770408792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation - Significant weighted average assumptions (Details)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Stock-based compensation</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk free interest rate</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="nump">0.17%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected option life (years)</a></td>
<td class="text">1 year 2 months 12 days<span></span>
</td>
<td class="text">1 year 1 month 6 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">31.92%<span></span>
</td>
<td class="nump">51.19%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Expected dividend yield</a></td>
<td class="nump">2.87%<span></span>
</td>
<td class="nump">2.42%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>103
<FILENAME>R87.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994766030024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation - Stock option activity (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at the beginning of period -Options | shares</a></td>
<td class="nump">10,030<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted - Options | shares</a></td>
<td class="nump">12,032<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised - Options | shares</a></td>
<td class="num">(2,106)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Forfeited/expired - Options | shares</a></td>
<td class="num">(9,466)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at the ending of period -Options | shares</a></td>
<td class="nump">10,490<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding-Weighted Average Exercise Price at the beginning of period - Options | $ / shares</a></td>
<td class="nump">$ 12.98<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted-Weighted Average Exercise Price | $ / shares</a></td>
<td class="nump">9.33<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised-Weighted Average Exercise Price | $ / shares</a></td>
<td class="nump">8.10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Forfeited/expired-Weighted Average Exercise Price | $ / shares</a></td>
<td class="nump">9.44<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding-Weighted Average Exercise Price at the ending of period - Options | $ / shares</a></td>
<td class="nump">$ 12.98<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding-Weighted Average Remaining Contractual Life (Years)</a></td>
<td class="text">2 years 3 months 18 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)-(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123467817&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>104
<FILENAME>R88.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769872216">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</a></td>
<td class="nump">$ 7,876<span></span>
</td>
<td class="nump">$ 3,891<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_BelowMarketPriceMember', window );">Below Market Price [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">$ 3.71<span></span>
</td>
<td class="nump">$ 2.70<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_BelowMarketPriceMember', window );">Below Market Price [Member] | Employees [Member] | Preferred stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">3.71<span></span>
</td>
<td class="nump">2.70<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AtMarketPriceMember', window );">At Market Price [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">2.89<span></span>
</td>
<td class="nump">2.45<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AtMarketPriceMember', window );">At Market Price [Member] | Management Employees [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AtMarketPriceMember', window );">At Market Price [Member] | Employees [Member] | Common stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">2.89<span></span>
</td>
<td class="nump">2.45<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AboveMarketPriceMember', window );">Above Market Price [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AboveMarketPriceMember', window );">Above Market Price [Member] | Management Employees [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AboveMarketPriceMember', window );">Above Market Price [Member] | Employees [Member] | Preferred stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_BelowMarketPriceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_BelowMarketPriceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_EmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=cwco_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AtMarketPriceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AtMarketPriceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cwco_ManagementEmployeesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=cwco_ManagementEmployeesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AboveMarketPriceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=cwco_AboveMarketPriceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>105
<FILENAME>R89.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765198552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-based compensation (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>May 14, 2008</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod', window );">Cumulative financial performance targets measurement period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of stock grant rights issued</a></td>
<td class="nump">12,032<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax', window );">Allocated Share-based Compensation Expense, Net of Tax</a></td>
<td class="nump">$ 137,215<span></span>
</td>
<td class="nump">$ 125,487<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares</a></td>
<td class="nump">10,490<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price</a></td>
<td class="nump">$ 12.98<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm', window );">Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term</a></td>
<td class="text">2 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition</a></td>
<td class="text">2 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock value</a></td>
<td class="nump">$ 17,181<span></span>
</td>
<td class="nump">18,641<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised', window );">Number of days employee option to purchase preferred stock must be exercised</a></td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based Compensation</a></td>
<td class="nump">$ 977,232<span></span>
</td>
<td class="nump">$ 1,163,261<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ClosingPriceOfCommonShares', window );">Closing Price of Common Shares</a></td>
<td class="nump">$ 10.64<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=cwco_NonExecutiveDirectorsSharePlanMember', window );">Non Executive Directors Share Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of stock grant rights issued</a></td>
<td class="nump">30,911<span></span>
</td>
<td class="nump">19,712<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based Compensation</a></td>
<td class="nump">$ 319,002<span></span>
</td>
<td class="nump">$ 318,991<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=cwco_NonperformancebasedGrantsMember', window );">Non-Performance-Based Grants [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod', window );">Cumulative financial performance targets measurement period</a></td>
<td class="text">3 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of stock grant rights issued</a></td>
<td class="nump">26,403<span></span>
</td>
<td class="nump">23,458<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation', window );">Number of vested shares issued</a></td>
<td class="nump">$ 25,789<span></span>
</td>
<td class="nump">$ 28,891<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Allocated Share-based Compensation Expense</a></td>
<td class="nump">$ 306,250<span></span>
</td>
<td class="nump">$ 344,940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=cwco_PerformancebasedGrantsMember', window );">Performance-Based Grants [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod', window );">Cumulative financial performance targets measurement period</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of stock grant rights issued</a></td>
<td class="nump">18,419<span></span>
</td>
<td class="nump">31,788<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Allocated Share-based Compensation Expense</a></td>
<td class="nump">$ 214,765<span></span>
</td>
<td class="nump">$ 373,843<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OptionIndexedToIssuersEquityTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</a></td>
<td class="nump">$ 16,554<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OptionIndexedToIssuersEquityTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option [Member] | Common Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Number of stock grant rights issued</a></td>
<td class="nump">3,400<span></span>
</td>
<td class="nump">2,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OptionIndexedToIssuersEquityTypeAxis=cwco_EquityIncentivePlan2008Member', window );">Equity Incentive Plan2008 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Common Stock, Capital Shares Reserved for Future Issuance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,500,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_RedeemablePreferredStockMember', window );">Redeemable preferred stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm', window );">Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term</a></td>
<td class="text">1 year 2 months 1 day<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized</a></td>
<td class="nump">$ 147,074<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock value</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod', window );">Additional consecutive individual requisite service period required for eligibility in Employee Share Incentive Plan</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_StockholdersEquityNoteConversionRatioPreferredShares', window );">Number of preferred shares converted to common shares dependent upon specific criteria</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_StockholdersEquityNoteConversionRatioCommonShares', window );">Number of common shares received upon conversion of preferred shares dependent upon specific criteria</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock', window );">Number of average trading price of the common stock</a></td>
<td class="text">7 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesIssuedForServices', window );">Stock Issued During Period, Shares, Issued for Services</a></td>
<td class="nump">8,632<span></span>
</td>
<td class="nump">6,123<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_cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The additional consecutive individual requisite service period required for eligibility in the Employee Share Incentive Plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ClosingPriceOfCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Closing price of the common shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ClosingPriceOfCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days employee option to purchase preferred stock must be exercised.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of average trading price of the common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The measurement period for cumulative financial performance targets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for non vested options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_StockholdersEquityNoteConversionRatioCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of common shares received upon conversion of preferred shares dependent upon specific criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_StockholdersEquityNoteConversionRatioCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_StockholdersEquityNoteConversionRatioPreferredShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of preferred shares converted to common shares dependent upon specific criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_StockholdersEquityNoteConversionRatioPreferredShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=122041274&amp;loc=d3e301413-122809<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 (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_AllocatedShareBasedCompensationExpenseNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of expense for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of non-vested options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average grant-date fair value of non-vested options outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="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_StockGrantedDuringPeriodValueSharebasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 30<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121321822&amp;loc=d3e3913-113898<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 30<br> -Section 35<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121323062&amp;loc=d3e15009-113911<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_StockIssuedDuringPeriodSharesIssuedForServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesIssuedForServices</td>
</tr>
<tr>
<td style="padding-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_AwardTypeAxis=cwco_NonExecutiveDirectorsSharePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=cwco_NonExecutiveDirectorsSharePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardTypeAxis=cwco_NonperformancebasedGrantsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=cwco_NonperformancebasedGrantsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardTypeAxis=cwco_PerformancebasedGrantsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=cwco_PerformancebasedGrantsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OptionIndexedToIssuersEquityTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OptionIndexedToIssuersEquityTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardTypeAxis=cwco_CommonStockOptionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=cwco_CommonStockOptionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_OptionIndexedToIssuersEquityTypeAxis=cwco_EquityIncentivePlan2008Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OptionIndexedToIssuersEquityTypeAxis=cwco_EquityIncentivePlan2008Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RedeemablePreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_RedeemablePreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>106
<FILENAME>R90.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994764908712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement benefits (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PensionExpense', window );">Pension Expense</a></td>
<td class="nump">$ 584,278<span></span>
</td>
<td class="nump">$ 576,096<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RetirementPlanAxis=country_KY', window );">Cayman Islands [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount', window );">Maximum annual contribution amount</a></td>
<td class="nump">$ 104,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RetirementPlanAxis=stpr_FL', window );">FLORIDA</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</a></td>
<td class="nump">6.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RetirementPlanAxis=stpr_CA', window );">California [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Employer Matching Contribution, Percent of Employees' Gross Pay</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RetirementPlanAxis=stpr_CA', window );">California [Member] | Defined Contribution Plan, Employer Matching Contribution, 25 Percent of Match [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Employer Matching Contribution, Percent of Match</a></td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_RetirementPlanAxis=stpr_CA', window );">California [Member] | Defined Contribution Plan, Employer Matching Contribution, 25 Percent of Match [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Employer Matching Contribution, Percent of Match</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedBenefitPlanDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="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_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage employer matches of the employee's percentage contribution matched.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</td>
</tr>
<tr>
<td style="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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum amount the employee may contribute to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="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_PensionExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost (reversal of cost) for pension benefits. Excludes other postretirement benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_cwco_RetirementPlanAxis=country_KY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_RetirementPlanAxis=country_KY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_RetirementPlanAxis=stpr_FL">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_RetirementPlanAxis=stpr_FL</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_cwco_RetirementPlanAxis=stpr_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_RetirementPlanAxis=stpr_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_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis=cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis=cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>107
<FILENAME>R91.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994769876360">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Financial instruments (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract', window );"><strong>Recurring</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Fair value, Assets</a></td>
<td class="nump">$ 128,000<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Net liability arising from put/call options</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(690,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Fair Value, Inputs, Level 3 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract', window );"><strong>Recurring</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Fair value, Assets</a></td>
<td class="nump">128,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue', window );">Net liability arising from put/call options</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (690,000)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember', window );">Certificate of deposit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract', window );"><strong>Recurring</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Fair value, Assets</a></td>
<td class="nump">2,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="top.Show.showAR( this, 'defref_us-gaap_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember', window );">Certificate of deposit [Member] | Fair Value, Inputs, Level 2 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract', window );"><strong>Recurring</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Fair value, Assets</a></td>
<td class="nump">$ 2,500,000<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract</td>
</tr>
<tr>
<td style="padding-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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_CertificatesOfDepositMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>108
<FILENAME>R92.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994773830584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments - Level 3 activity (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Net (liability)/asset arising from put/call options</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs', window );">Balance as of December 31, 2020</a></td>
<td class="num">$ (690,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings', window );">Unrealized gain</a></td>
<td class="nump">818,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs', window );">Balance as of December 31, 2021</a></td>
<td class="nump">$ 128,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_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward</td>
</tr>
<tr>
<td style="padding-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_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) recognized in income from derivative asset (liability) after deduction of derivative liability (asset), measured at fair value on recurring basis using unobservable input (level 3).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fair value of financial instrument classified as derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123874694&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>109
<FILENAME>R93.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994851684328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Financial instruments - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue', window );">Number of days after consumption billings are considered past due</a></td>
<td class="text">45 days<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies', window );">Duration certain foreign currencies are fixed to the dollar</a></td>
<td class="text">20 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of days after consumption billings are considered past due.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The duration certain foreign currencies are fixed to the dollar.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-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_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>110
<FILENAME>R94.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994771894104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and contingencies (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($) </div>
<div>item</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CommitmentsAndContingenciesLineItems', window );"><strong>Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_EmploymentAgreementBaseAnnualSalaries', window );">Employment Agreement Base Annual Salaries</a></td>
<td class="nump">$ 3.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NumberOfReportingUnits', window );">Number of reporting units | item</a></td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CaymanWaterRetailOperationsPercentageOfRevenue', window );">Cayman Water Retail Operations, Percentage Of Revenue</a></td>
<td class="nump">33.00%<span></span>
</td>
<td class="nump">32.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit', window );">Cayman Water Retail Operations, Percentage Of Gross Profit</a></td>
<td class="nump">47.00%<span></span>
</td>
<td class="nump">44.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Long-term Purchase Commitment, Amount</a></td>
<td class="nump">$ 5.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_MajorCustomersAxis=cwco_WSCMember', window );">WSC [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_CommitmentsAndContingenciesLineItems', window );"><strong>Contingencies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Accounts Receivable, Net</a></td>
<td class="nump">21.5<span></span>
</td>
<td class="nump">$ 16.8<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Payments in accounts receivable</a></td>
<td class="nump">$ 22.9<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_cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the percentage of consolidated gross profit from Cayman Water retail operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_CaymanWaterRetailOperationsPercentageOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the percentage of consolidated revenue from Cayman Water retail operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CaymanWaterRetailOperationsPercentageOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_CommitmentsAndContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>na</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_CommitmentsAndContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</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_cwco_EmploymentAgreementBaseAnnualSalaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Represents the base annual salary amount, under the employment agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_EmploymentAgreementBaseAnnualSalaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 310<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123366838&amp;loc=d3e3073-115593<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermPurchaseCommitmentAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The minimum amount the entity agreed to spend under the long-term purchase commitment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermPurchaseCommitmentAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_NumberOfReportingUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportingUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=cwco_WSCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=cwco_WSCMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>111
<FILENAME>R95.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994765135432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Related party transactions (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableRelatedPartiesCurrent', window );">Accounts payable outstanding</a></td>
<td class="nump">$ 163,947<span></span>
</td>
<td class="nump">$ 200,558<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cwco_PercWaterCorporationMember', window );">PERC Water Corporation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionLineItems', window );"><strong>Related Party Transaction [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty', window );">Purchases of services</a></td>
<td class="nump">438,000<span></span>
</td>
<td class="nump">1,349,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableRelatedPartiesCurrent', window );">Accounts payable outstanding</a></td>
<td class="nump">164,000<span></span>
</td>
<td class="nump">$ 201,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty', window );">Amount of expense related to sublease agreement</a></td>
<td class="nump">$ 77,000<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_AccountsPayableRelatedPartiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount for accounts payable to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://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> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br><br>Reference 3: 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 http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39603-107864<br><br>Reference 4: 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 http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableRelatedPartiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 850<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6457730&amp;loc=d3e39549-107864<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RelatedPartyTransactionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionLineItems</td>
</tr>
<tr>
<td style="padding-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_RelatedPartyTransactionPurchasesFromRelatedParty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_RelatedPartyTransactionsByRelatedPartyAxis=cwco_PercWaterCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cwco_PercWaterCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>112
<FILENAME>R96.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.22.1</span><table class="report" border="0" cellspacing="2" id="idm139994770842168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Supplemental disclosure of cash flow information (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowElementsAbstract', 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="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid in cash</a></td>
<td class="nump">$ 10,248<span></span>
</td>
<td class="nump">$ 9,669<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-cash transactions:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DividendsPayableCurrentAndNoncurrent', window );">Dividends declared but not paid</a></td>
<td class="nump">1,298,148<span></span>
</td>
<td class="nump">1,289,854<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment', window );">Transfers from inventory to property, plant and equipment and construction in progress</a></td>
<td class="nump">189,924<span></span>
</td>
<td class="nump">73,464<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet', window );">Transfers from construction in progress to property, plant and equipment</a></td>
<td class="nump">644,224<span></span>
</td>
<td class="nump">1,653,501<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-use assets obtained in exchange for new operating lease liabilities</a></td>
<td class="nump">1,852,608<span></span>
</td>
<td class="nump">299,992<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction', window );">Purchase of equipment through issuance of long-term debt</a></td>
<td class="nump">$ 95,707<span></span>
</td>
<td class="nump">$ 122,292<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of transfers from Construction in Progress to property, plant and equipment, net.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of transfers from inventory to property plant and equipment and construction in progress.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cwco_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of debt issuance costs that were incurred during a noncash or partial noncash transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4304-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4313-108586<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 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_DividendsPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><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)(15)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4297-108586<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3367-108585<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3536-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><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)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_SupplementalCashFlowElementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowElementsAbstract</td>
</tr>
<tr>
<td style="padding-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>113
<FILENAME>cwco-20211231x10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:currency="http://xbrl.sec.gov/currency/2021"
  xmlns:cwco="http://www.cwco.com/20211231"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:stpr="http://xbrl.sec.gov/stpr/2021"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="cwco-20211231.xsd" xlink:type="simple"/>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_SqK6sNa4l0aOaqplT-GdUg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_qlfRbIlXskGozRKgpAjyQQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_kmcR6mwf2kemN6tjJfw22Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_S_EL5XcSjkKEALcifPnf3A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_fPxCCfOb20e5coHSZY-Lsw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_V-5ogwZFlkWHNDZfe_CqzQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ijhEl3qLT0SfYvzVe8CHrw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_JPdJe-Ae6Em7c6Q2FrNNpA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_T-3D9wrDF0KEqPIYbp8ETA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_EgJEqOrdJUiL7Fjrd38w_Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_5_31_2013_m3JQDoSat0mLyrWfhFiiHA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2013-05-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_eDN37ynhXkWzWlTmvuQp8w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_qesoc-vMc0isIqsmUe-XyA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
                <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="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_duu6DiK0skaZSCkjVOc2Sw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_17--TX751keZOsfNqkcolA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_3SIn1N2pn0mCFJlU7bK--g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_MHksL3_4KUWwRcG0PTPHCQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_btVR53m-jUGESeOtljKk4Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_X205sNsqy0G5w-LA4lrbDQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_iZPYwl2HZ02nexQzUx8a2A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_WLmUs0F_OkSgBJDKkXD0HQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_mV1UvFExFEeWFRyR2eypCw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:EmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_LI5h7HjgHUSEj_Q_th4x4g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_0ptnBVw1S0WnjglpvuTvYQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">cwco:ManagementEmployeesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_PmmGV0jAV0WsIRY0tKIu7g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:BelowMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_JIdK-cug7EGsXkUkbWQ3WQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AtMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_u9N7H5fmh0KZlJkCM3eR1Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis">cwco:AboveMarketPriceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_uh0sxFbAEUq10pMjfSjzjA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:CommonStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_TddUvJ6Na02QRBQfN9PQfg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:CommonStockOptionsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonExecutiveDirectorsSharePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonExecutiveDirectorsSharePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_0MeXq5vZnUCfNimySpnMeQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_-dFfc8peQEeI3VtY_ZHmpw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:RetailRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_891yP2BhlE-Tgn7a4CTS-Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_CSlU1cPtB0WiopIwPeGA1g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_VG_f1PvOgup9EuImo57Pqu29Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:VG</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_US_RSDYhylA5EaUs8pvVMkuhQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_KY_r_55bqiwcUO3N5_w6UPbXA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_BS_QXJQmBZH70mreEnT1WYT6A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_ConsolidatedEntitiesAxis_cwco_ConsolidatedWaterBahamasMember_srt_StatementGeographicalAxis_country_BS_TjELs3qLxkKtQNWWCjLUbA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidatedEntitiesAxis">cwco:ConsolidatedWaterBahamasMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_1aYYTFSqoECTbPyDh9BwmA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_46W_Lce_VUm9C3NSSmIrPg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:RetailRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_uzBPARo2t0Gt7yD1NWEUEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_XL907EX-IEuZ5up-6fmYiw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkRevenuesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_VG_p9lQjE2KGkWokzSh2X3lEA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:VG</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_US_7aRtVe6AbEi0OEu3t7kNBg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_KY__AeU1tTbRU-QVqy9aWCieA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_BS_9Fb5DN0wpkSlngUBr-8NMg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2021-12-31</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_6nLBAgvl_Ea8WqzLUJPsMw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_ClrXIKaDvkynEKkj3w8NYg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_3Tsz8pPl-0S59_MFCYzCnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rvqLB_HJpUewumqfdV2Nsw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_GMVJ3-rPmkeyPiPWP9NqWw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_mSY5_CCAL0e-_eMIRkbUVA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_mPCZyqRXKESTHEJKQCVz5w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_i92QTmrbHUqKBE4qYPwHUA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_Ss0z-whZYUSJvevcASK4_w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_jTY0y4r--EiEXAMHb_nZmQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_d9ohEbz4BkOGpyBII32Zkg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_K3Ihq-TdDE-ZGSnge38sEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_iogff4S0CkCSVSIW9dOHTg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_eczvaTabWUGDHmHOXgGznw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_nYfiDmZ6Rk2oUCZAEVttNA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_US_s1p_n0GAck66NMeZmI3WSw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_KY_F0359zoYFkaYzxPK-dCbIg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_BS_WSXr0WodAEeIoLOZSTfzRQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_US_8fspIUrFq0iXznqIAr9gnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_KY_tyOKrtxwtEWR608WKbWa3w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:KY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_BS_Df9FN9wj6EOR92k835m07Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:BS</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_DPIDrrm23U6xCvGcJcB6aA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_1GGLQ6kthUyV7m1_VGBRpw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Dg8BDT9XIEqd5W0viRmQJQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_M_HgzXulXkmcIh_xwKYrWw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_NcZIUjj1GUOB2vhn2iFpZw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_CzfqvDl2wUe2LSnoTArTwA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_rFv8iP5Y7UqmEXng7mXwnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9DHoHSNk8UGLD-3qmQuO-A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_fGR-Ohfs1U6INXwfYhxHGw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_yIfYKKMuGUmUB0HIqj1MOg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Gq8TCot5x0qU8u3_0ne28Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_IQA4ggKCwUurTE4IwWNvdQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_d9R7-HnSL0iEA4q5aOjxJQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_ZasKl46S-kCWxEsGwCVNBA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:PlantAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_2RQVTP85qkmCSF5ZuRurtA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:LabEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9gvh9nlZREK3E8_Ajv98yw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cwco:DistributionSystemsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_ErvLwk13nkiO2-V7OOxtFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_-yZiGEh88k22O15lfBATRw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_JfcwYyBEakO8TFxMeFrvMA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_MMJbH0DeKk6fK9CLog1cSg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_IqB3OicrFkeiNIeeIjR-Uw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_4nkKVq63Ok2x-GMwgdgt-g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:CapitalizedEngineeringLaborAndMaterialsCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_RIhkjGOXukmM43EDG9ye3w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:CapitalizedEngineeringLaborAndMaterialsCostMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember__DZ4cNPD0EWFbocUw4NusA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember_VKsJALKJqkmUBfrieQXVyw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_SmEMh4cxdEiHJigWEhXVQg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="As_Of_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_tok_x6VAPUmD3EIwXExBnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-24</instant>
        </period>
    </context>
    <context id="As_Of_2_28_2018_srt_OwnershipAxis_cwco_NSCAguaMember_V_2yYieCIE-chbMnJVCtNw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-02-28</instant>
        </period>
    </context>
    <context id="Duration_2_9_2022_To_2_9_2022_srt_RangeAxis_srt_MinimumMember_mG-OHKlDjEuqWQVAjfeE5g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-09</startDate>
            <endDate>2022-02-09</endDate>
        </period>
    </context>
    <context id="Duration_2_9_2022_To_2_9_2022_e-hhH-eOVE-bcwgPDZ6Ogw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2022-02-09</startDate>
            <endDate>2022-02-09</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_eK27emARAU2mKKBCyPz6aw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:WaterStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_uELHyMleHUyrT3u21aLCFQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:SparePartsStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_EFM7vPcFNEmC4z7b0LGJ6g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:ConsumablesStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_2URf-WJgHUWNUkUB4ndn2A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:WaterStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_Kj4GgNPmcEO0AQNN4roLJw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:SparePartsStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_mOgZI7LkwkWHR4GtJ0cEUw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:ConsumablesStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_FG065aqhNESf5l2w1wZLgg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_6_1_2021_To_6_30_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_oszWfLjlvEq5bax8GUqm3Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_7m6rF6Uj90mfuItIrE7hCw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:ProfessionalsFeeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_TOitYhxwg0W68pJpwEjZ0g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:OtherCreditDeviceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_pO4dE_fbskO9VXGI88UmsQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DirectorsFeesAndExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_Go8uayF_0kizBJckFytZnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:AmortizationOfIntangiblesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_tNgqPSYlik-XMvXImeXynQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:ProfessionalsFeeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_pzf1TtXv7ESmfsKJZiTwGw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:OtherCreditDeviceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_LzAYr8PnoUiHD4Lr9hwW5A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DirectorsFeesAndExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_kRpGDMpyNEGfm85XSOZKfQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:AmortizationOfIntangiblesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:TradeNameMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:ManagementContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:CustomerBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:TradeNameMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:ManagementContractsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cwco:CustomerBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Muen2zsr-ESASfWfylZ8cg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_x5jvKJPM5kyNOvCafquv3A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Xu56YY7wuUuQ4iEUJyq88Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_2DtZn0YcmUuWeIvU518cjA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_OwnershipAxis_cwco_NSCAguaMember_y34pSeGxCkyAelXMEnbZNA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_0yuwNccBOkiazVHGrZqHCg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">cwco:AguasDeRosaritoSapiDeCvMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_8_31_2016_srt_OwnershipAxis_cwco_NSCAguaMember_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_9ebzzcwQnkOLu-XEmIumYg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">cwco:AguasDeRosaritoSapiDeCvMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-08-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_KsdVl-TcrE2EB_xPG1O7Kw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_FL_vVakg1b1O0aRtqSi86JVnQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:FL</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">country:KY</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_srt_RangeAxis_srt_MaximumMember_5UnaWkFxXUaiqbEuHv1xVQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis">cwco:DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_jKEZmTVO80GP5Fl_jTaGjA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis">cwco:DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:RetirementPlanAxis">stpr:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_ETZ4MiAHaEO58VZI3-61ZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:OtherExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_2_4xHWNyOUiRFJL1SiphTA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_dwJApOGydku2pSUkdE4cXA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:ElectricityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_3Hk3LMrdnEC7vdv7eMSHzQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:RoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_U4ujjFBn80GNcRKr-wSbAA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:MaterialsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:InsuranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_ekiKLPPPN0Sq-xNE9FPGlw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:FuelOilMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:EmployeeCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_HftNJsdBOk67Xi6tf0YEYg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:OtherExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_nIDwp5kSwEeLdwVBQnxtSg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:MaintenanceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_3WUre99xyUmAtlM3gU49yA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:ElectricityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_8LyZFX58x0amUMmdq91b0A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:RoyaltiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_3fijKjtLP0i_W_LYAwWCGg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:MaterialsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:InsuranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_zsWawSRNeEq148hA6_fMFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:FuelOilMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:EmployeeCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:DepreciationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Gkceb99m70Oqnxt1VxUgeQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_GrossProfitMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_kuRK6cbUnkOldkSTsMCAJA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">cwco:GrossProfitMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_5_14_2008_us-gaap_OptionIndexedToIssuersEquityTypeAxis_cwco_EquityIncentivePlan2008Member_3Q0krjmaL0mpFVyAg2ZBgg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:OptionIndexedToIssuersEquityTypeAxis">cwco:EquityIncentivePlan2008Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2008-05-14</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_VljHS7TLeEuM1EZJT4Aegw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:USD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KYD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BSD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_CurrencyAxis_currency_BMD_yI9Ptl_N-UCFrFY35QHWCw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BMD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:USD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:KYD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BSD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_CurrencyAxis_currency_BMD_YbOYPvhNE02T-1w0bLtgBQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:BMD</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_8_11_2020_To_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_2IXccD9r5kG85vF-cpFJhQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-11</startDate>
            <endDate>2020-08-11</endDate>
        </period>
    </context>
    <context id="Duration_1_24_2020_To_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_DfTzkZcxR0iDw2oJVTFipQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-24</startDate>
            <endDate>2020-01-24</endDate>
        </period>
    </context>
    <context id="As_Of_8_11_2020_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_fVPx_MibB0OMJNw6Y5r5GQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="As_Of_1_24_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_-rAQ5puBFEGgq1eq5MMXmA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-24</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_BXNxweqTQESXtjduBYzovg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2012-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonperformancebasedGrantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_M_3fIYjfP0ynHMyY6fXXgQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_KL0_AYYciUig1h4lFosT6g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_OpP9NCQeO06JFuLmPuYNug">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-10-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember_PTA0S20ZJ0e5OIrmFA_AAg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelatedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-10-31</endDate>
        </period>
    </context>
    <context id="Duration_2_1_2016_To_2_29_2016_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_c-2h8OBDN0aON6oPALMSrw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-02-01</startDate>
            <endDate>2016-02-29</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_0UrMNm_IgE20WJPYFn3V2Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_srt_MajorCustomersAxis_cwco_WSCMember_NAQlDRECXky4oRc5QZd7lg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">cwco:WSCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rOFFYC2JR06pIy16OuiGlQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_EWXiKUL8zEWQaZQF2E-9Qg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_6_30_2021_JXJuRA2It0yddTf-0dL5pA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="As_Of_3_24_2022_OK4vRfr_60OJ9KVAP6NpyQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2022-03-24</instant>
        </period>
    </context>
    <context id="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_fXbSxGQDBEil6EJ78NbOyg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2013-05-31</instant>
        </period>
    </context>
    <context id="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2013-05-31</instant>
        </period>
    </context>
    <context id="As_Of_1_31_2018_srt_OwnershipAxis_cwco_NSCAguaMember_NnEiRjWZnkOVOe3bRoZISA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-01-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:PerformancebasedGrantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:NonperformancebasedGrantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">cwco:PerformancebasedGrantsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_SecondPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_rHzf6vwgrEi5AXn4ULiodg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:TypeOfPhasesAxis">cwco:SecondPhaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-08-22</startDate>
            <endDate>2016-08-22</endDate>
        </period>
    </context>
    <context id="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_FirstPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_JTQpx4uNUUeasrgD2BLxZg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:TypeOfPhasesAxis">cwco:FirstPhaseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-08-22</startDate>
            <endDate>2016-08-22</endDate>
        </period>
    </context>
    <context id="Duration_5_1_2010_To_5_31_2010_srt_OwnershipAxis_cwco_NSCAguaMember_ELCRUOm45UyRTNSZEM2cww">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2010-05-01</startDate>
            <endDate>2010-05-31</endDate>
        </period>
    </context>
    <context id="Duration_5_1_2013_To_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_jqPLIJFZdku8X2mo0bAsBA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2013-05-01</startDate>
            <endDate>2013-05-31</endDate>
        </period>
    </context>
    <context id="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-08-22</startDate>
            <endDate>2016-08-22</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_2_28_2012_srt_OwnershipAxis_cwco_NSCAguaMember__pEUZLjDdE-w_1NqjlSrvg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2012-02-28</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_iFjut3yj2USWDhBKw1EUtQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_12_31_2019_srt_RangeAxis_srt_MaximumMember_VoBNP3iM4k2BNaN6Qz9urw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_2_1_2012_To_2_29_2012_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_djn4vltDBUmVX5_2Vdtjgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2012-02-01</startDate>
            <endDate>2012-02-29</endDate>
        </period>
    </context>
    <context id="Duration_2_1_2014_To_2_28_2014_srt_OwnershipAxis_cwco_NSCAguaMember_Eluk4flh70GeTTsoCuRLVg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2014-02-01</startDate>
            <endDate>2014-02-28</endDate>
        </period>
    </context>
    <context id="Duration_2_1_2014_To_2_28_2014_HJpTja8YgkGJaUavhR6H2A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2014-02-01</startDate>
            <endDate>2014-02-28</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2012_To_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_VH9UoHlOJEqIuJBRDtZRQA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2012-01-01</startDate>
            <endDate>2012-12-31</endDate>
        </period>
    </context>
    <context id="Duration_2_1_2012_To_2_29_2012_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_CYVRFLGpzUqdDV3XmsDmrQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">cwco:OptionAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2012-02-01</startDate>
            <endDate>2012-02-29</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_oww2NlKTikmmAbu_wf9sNQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:PrepaidExpensesAndOtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-06-29</startDate>
            <endDate>2020-06-29</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_jAlv-wKdHk6TC4NonWW2Zw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</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="As_Of_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember__u3VSfhz50eP9mBQI9RtAg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_9_1_2021_To_9_30_2021_srt_OwnershipAxis_cwco_NSCAguaMember_4__250xRJkmbeyT7OJ-G1A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-09-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_sLkepPeG70KqKTgr9Pcu4w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_d0Dsq74pMUqS5aSJqpup_Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_yvJMcp0hA0qqmEZprPv3dw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_W-NwYGTack6NuMLbCHpXdg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_3FbK4qa0gke44tgFa-BN6g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:DiscountedCashFlowMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_D1lthUdJE0ycaWtJ1ICfmw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="cwco:FairValueDeterminingMethodAxis">cwco:GuidelinePublicCompanyMethodMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_YxR91NTNuUm49PPfDJS35g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:PercWaterCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_5yj8uCvmxEisBUbULN8DCQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cwco:AerexIndustriesIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:WaterAndSewerageCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:OneCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:WaterAndSewerageCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cwco:OneCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_7_1_2021_To_9_30_2021_9jAZh4BOB0mcpaqQ_ZXlKw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2021_To_6_30_2021__Gabo7f7HE-d5MnY7otC0Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_3_31_2021_6GR5dwxrG0mn1S8Q07JC_A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2020_To_12_31_2020_yaHay4RHZ0q1Fp4qvuDHAg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_7_1_2020_To_9_30_2020_R0W93yqJ5U-N4DNtaM_56A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2020_To_6_30_2020_O-Nf9Aq6YUSFYO-nIC9DjQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_ysyumH7iX02apdWgbu732g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">cwco:MexicoProjectDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:OwnershipAxis">cwco:NSCAguaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-28</startDate>
            <endDate>2020-08-28</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:SegmentRetailMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:ManufacturingUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cwco:BulkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:RedeemablePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928340</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <unit id="Unit_Standard_item_q9VGVy0HoU-6ARV1IfDU3A">
        <measure>cwco:item</measure>
    </unit>
    <unit id="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">
        <measure>utr:gal</measure>
    </unit>
    <unit id="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">
        <measure>pure</measure>
    </unit>
    <unit id="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q">
        <measure>iso4217:MXN</measure>
    </unit>
    <unit id="Unit_Standard_customer_eNCDyeI8C0-i-NfyoLXf-A">
        <measure>cwco:customer</measure>
    </unit>
    <unit id="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">
        <measure>shares</measure>
    </unit>
    <unit id="Unit_Standard_ha_K-jpQBTkYEqk72sCRDBJPw">
        <measure>utr:ha</measure>
    </unit>
    <unit id="Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g">
        <measure>cwco:segment</measure>
    </unit>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      id="Hidden_UMWjUHPHZ0yMv5yynWkGew"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      id="Hidden_Argt-cxyxkKa3ClAu51yDg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg"
      xsi:nil="true"/>
    <dei:EntityCentralIndexKey
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_7naAnXzyBUiTrDALWIntQg_1_1">0000928340</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_FhrA92gN7E-Yu17uudLjbg_2_1">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_jAeLQm7a3Ey8ReqnQBhUpQ_3_1">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_dQB8OJn9MEOMMgrzyaww0Q_4_1">FY</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_AArLMT2IwUuLCTjve7QCCQ_5_1">false</dei:AmendmentFlag>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Hidden_Sz9kI-27qUOVVljG2DBb2g">KY</dei:EntityIncorporationStateCountryCode>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="INF"
      id="Hidden_emqxMykmwk2ThFkpP2wxLA"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">31068</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Hidden_uu0zN9ycDUWaXmsBNmtLmQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">28635</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"
      decimals="INF"
      id="Hidden_sxtnWVSthEODA80uNzrRkw"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15143683</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"
      decimals="INF"
      id="Hidden_7HifNNE6xkyTI6fN4bdL1g"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15243693</us-gaap:CommonStockSharesOutstanding>
    <cwco:NumberOfDaysAfterConsumptionBillingsAreCollected
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_jAlv-wKdHk6TC4NonWW2Zw"
      id="Hidden_diVp5qBtB0KjZqeIyo-3cQ">P45D</cwco:NumberOfDaysAfterConsumptionBillingsAreCollected>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA"
      id="Hidden_ANe22B19gUG017w1p2eYRQ">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA"
      id="Hidden_wAgvE9b-oEOCy5TqD4Q-Ww">P2Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g"
      id="Hidden_UFQss1Ac5ku0S6GVflhWSQ">P3Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_M_3fIYjfP0ynHMyY6fXXgQ"
      id="Hidden_7Vzzq6mJ2UyIIFUN-Z-LwA">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_KL0_AYYciUig1h4lFosT6g"
      id="Hidden_2CuHKC-KbEypnk7AYihx7Q">P5Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_2_1_2016_To_2_29_2016_us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_c-2h8OBDN0aON6oPALMSrw"
      id="Hidden_nq7s2BVEU0y53NOcLsh0Ow">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <cwco:AdditionalConsecutiveIndividualRequisiteServicePeriod
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      id="Hidden_YdM7dYC86EaCKfEKZM-B2w">P4Y</cwco:AdditionalConsecutiveIndividualRequisiteServicePeriod>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw"
      decimals="0"
      id="Hidden_QN5hwaabf0iOIJGHKM6vcw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:PreferredStockValue>
    <cwco:NumberOfDaysOfAverageTradingPriceOfCommonStock
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      id="Hidden_Tlfe_TGKFk6q2QbewkdKDw">P7D</cwco:NumberOfDaysOfAverageTradingPriceOfCommonStock>
    <cwco:NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Hidden_wsvl4L0MzkWVVe1YTEyRYg">P30D</cwco:NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      id="Hidden_FTMbIkzyt0eqy4QDdP_stg">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw"
      id="Hidden_8mTRR9wXqkSZbjtKI0msDQ">P3Y</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod>
    <cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Hidden_odlCgAb2tkGuHko8GsFcGA">P45D</cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue>
    <cwco:TermOfForeignExchangeRiskToDollarForCertainCurrencies
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ"
      id="Hidden_bdKxU7g9K0WrA2yhp7tZlw">P20Y</cwco:TermOfForeignExchangeRiskToDollarForCertainCurrencies>
    <dei:DocumentType
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_OfCTyC80nkOUFy3yhlhx5Q">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_Da4TXdz3w0ugVuEU4EaClQ">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_BmDsAGUvO0-GRczRtneyyw">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_nZ9cVS1XIUqlO0KxSOjE4A">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_LMFkK8A_H0q3J7zPXXrTtg">0-25248</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_O_PV2D3eeUOz0xzV5fU4dw">CONSOLIDATED WATER CO.&#160;LTD.</dei:EntityRegistrantName>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_2hG7OSY_lEOMSbJcl7x7Sw_1_2">98-0619652</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_A-X-RMvqDEuAGkV6xKTBTg_5_0">Regatta Office Park</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_0i09iFfAvUaOdDdoiFmMrA_6_0">Windward Three, 4th Floor, West Bay Road</dei:EntityAddressAddressLine2>
    <dei:EntityAddressAddressLine3
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_P-wgw4i5jUiIruI4TTIXAg_7_0">P.O.&#160;Box 1114</dei:EntityAddressAddressLine3>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_JAEo7eoWp06KqJ9r2UJgPg">Grand Cayman</dei:EntityAddressCityOrTown>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_6xV8ldiy5kOF8vloD5oOaQ">KY1-1102</dei:EntityAddressPostalZipCode>
    <dei:EntityAddressCountry
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_Zt8szNdiU0awS2FaNbax7g">KY</dei:EntityAddressCountry>
    <dei:CityAreaCode
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_IlDGX_waHESaRWKdcJa5Ug">345</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_hc9280BdQkq6ey3uMLPusQ">945-4277</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_KAj7Xtpv3kasrRWvdMSDiA">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_EeFlU0NhhkOg8IToeB148Q_2_2">CWCO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_ClLGTQ-bXES-KNbegRTBjg">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_GmXlVTOwB0C6yQE_Jzez5g">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_wnxc0_ph0kyHnX0cM2POZg">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_Vd5JTNYoVEikffI7w_z2_A">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_aNH79SGJXkuo2zNAYCi2zQ">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_TTxYZMOyaEako0YkaB4m8Q">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_QcOGZtSJCUOO60T_veIBzw">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_B2EqFLFTUUKvimtN6OPk8Q">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_XiBbIOAsfkGGUj7D65pJJw">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_o8Iwaz21o0mm9endjgMziQ">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="As_Of_6_30_2021_JXJuRA2It0yddTf-0dL5pA"
      decimals="0"
      id="Narr_YFPTgEHufkm-2AZPgfVAFg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">169038813</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="As_Of_3_24_2022_OK4vRfr_60OJ9KVAP6NpyQ"
      decimals="INF"
      id="Narr_DV9WbGwB1UmvwDH8v-PZCw"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15267104</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorFirmId
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_m5119DlNXEaMSjB3tePCTQ">688</dei:AuditorFirmId>
    <dei:AuditorName
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_4-o4mJ2GbECyMJIjAYmTnQ">Marcum LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_usVbDCboykKxO-qxSnIWFg_5_0">West Palm Beach, Florida</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_bjYA-hFoJESGOY8mUrdKiA_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">40358059</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_EuT8juaJM0yYtG0CBIJ4fQ_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43794150</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CertificatesOfDepositAtCarryingValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_bgAWgeyjzE2w3zf1xpKQaA_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</us-gaap:CertificatesOfDepositAtCarryingValue>
    <us-gaap:CertificatesOfDepositAtCarryingValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_C1HzsdXge0CaXGuCUJCA9g_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:CertificatesOfDepositAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_l8A92UDguUCgI_1Ji3jezg_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27349307</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Y02PH8pkLEWopxzsdV3TlQ_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21483976</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_w0ifeJN7yEKuPVxFSlbtnQ_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2504832</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HjL8dldQAUiKchr_44p78A_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3214178</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_WkDelLeskUuIWBHhRVyskg_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2558822</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HlBLIC7gGk-Cf243zANz9A_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2412282</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_WBw57Spft0KwvglvQ6WsQw_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">489961</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_GQbPbtJ140SAZlISWbJ_Vw_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">516521</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_xiFh4ED2QE-_lQ3z320rvw_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1173741</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_MxXDkvSTLEycP-wAoQzXPg_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1511099</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_SztwvCqqkkyw2QQYsnnMRg_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">76934722</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_SVtRw5LEsUeHLDJ9PCGSLw_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">72932206</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_BHBFGqcdhEOR247AWV0JTw_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">52946539</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_UsVu_HuiSUCbYgcnlL0ZDg_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">57687984</us-gaap:PropertyPlantAndEquipmentNet>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_kCA7wKXsLkaEHcxbibRrhw_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">710863</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_xIUWZBvZd0Cteq2dxL9B5w_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">440384</cwco:ConstructionInProgress>
    <us-gaap:InventoryNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_SSW91yz_xE6JqrWs-FVwqQ_16_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4733010</us-gaap:InventoryNoncurrent>
    <us-gaap:InventoryNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_dQNtVIDZekOHa03AgtkxNQ_16_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4506842</us-gaap:InventoryNoncurrent>
    <us-gaap:EquityMethodInvestments
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_bZO0IhM-8k-pLn-tOAw3Cw_17_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1715905</us-gaap:EquityMethodInvestments>
    <us-gaap:EquityMethodInvestments
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HK185ipgek2GjC5CHpkSRQ_17_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2092146</us-gaap:EquityMethodInvestments>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_RoglktV5JkK8z4oOJlNxsA_18_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10425013</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_1XeGtUGN30G4CPdu92RDbg_18_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13325013</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_WhynodM_0kOCA51wZlOnmg_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3401666</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_pRtq8W0Ib0mT5bR93PpH8w_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4148333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_vm9K7AwwBE2Q2Hv6OWI0Gg_20_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2681137</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_WepBar7GikKd9FWKNyKI7A_20_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1329561</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_U9UJBiimWkG8eD37_cqi_A_21_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">128000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_R6kTknzErUWnefGTtNLbVw_21_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_10wp1gUtnk-HvYzwBkYvGw_22_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2204013</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_a-4BpDRzxEW74BZ1rkWoSg_22_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1926594</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_lKzZKh7qm02wSLwgsNV2eQ_23_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21146186</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HzHg9e7KKkykTrDDquGbVQ_23_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21166489</us-gaap:DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ZRCSRPJn5E-D2cGdCRko3w_24_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">177027054</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_pAh6DyxCIEiu6l9yfK_gkg_24_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">179555552</us-gaap:Assets>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_gSHkziON3EmvSnaPcmqa0A_28_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2831925</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_cP3oyGKtmU-Pbs-NybbCrA_28_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2740191</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_l_YDgtupukOLWa7tW4sRmg_29_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">163947</us-gaap:AccountsPayableRelatedPartiesCurrent>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_0eBXYqGN20uEcxD8MZ8JtQ_29_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">200558</us-gaap:AccountsPayableRelatedPartiesCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_H7q4fiE8IkWXiBaIrdx1BQ_30_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1435542</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_RUvbNCm7okquSmi_CCTctA_30_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1434106</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_VWODalf5zkmBdiHPWuEBqw_31_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1320572</us-gaap:DividendsPayableCurrent>
    <us-gaap:DividendsPayableCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_aGn-ow3qC0adOpXU7vbERw_31_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1300022</us-gaap:DividendsPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_8GSvp2124E-qAB75422UZw_32_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">592336</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_D36Q1SRCeku9lJnSDmFlng_32_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">455788</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_zdcj7jQkg0yKfn6LKAxg0g_33_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">62489</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_LcA_vv5mFk-s-r3XY9DPLw_33_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">42211</us-gaap:LongTermDebtCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_pgMW9qIS70SELFMmTY2wxg_34_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">513878</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc__Cx08GE3J0KeEaoFZAeI_g_34_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">461870</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:DeferredIncomeCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_823DPCXHB0KH8e7tzJQxBA_35_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">583646</us-gaap:DeferredIncomeCurrent>
    <us-gaap:DeferredIncomeCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Wc9mmpf8VE-AVmtIxSLF3Q_35_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">115936</us-gaap:DeferredIncomeCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_UN1OL2jPsUKWEcX9XI2h6Q_36_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">182322</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_bJsgZNNdskmu3ZnXiwKDHw_36_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">188434</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_6ovCbt8dpku4VcxnXV-vAg_37_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7686657</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc__Pj-31VQe0uvx5zjYB21rw_37_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6939116</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_HLNstLeeXkKhMcC2n1HONw_38_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">152038</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_nMaDSVIEpESayMLRlhXFwQ_38_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">126338</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_FLJAE13f1EeIl52tuc3i6w_39_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1236723</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_nn5voPjSRkyZfQRt0oWJQQ_39_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1440809</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc__vhn-Iydy0K7HXFwSzNbVQ_40_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2137394</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_WoMKOirVq0CgLmZbZwTFYg_40_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">982076</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_TCi3wKXyCkiWDdOAeiMpnw_41_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_J9kyZzXHYEmT5sNbT6bq7g_41_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">690000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_VUXKSlarpUCQCnkCYiJt9g_42_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">141000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_k1-7NgGPXEeAHZDtXqggwA_42_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">362165</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Ug760AdDl0GoeKWbakEASw_43_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7819</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_-S_lW2jOMke_cla8tG7aOA_43_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2499</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:Liabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_IkGGYbEFhEO-rYXiQA56Aw_44_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11361631</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_FFfzftOVMka1gWuRkgDHQQ_44_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10543003</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="INF"
      id="Narr_jYM3y-cWI0qd-LcRg_TPag"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Narr_uKtYRoWxqUqsRX0go7eyCw"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="INF"
      id="Narr_qtR6ygqqAE62SkHQakt0-A"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">200000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Narr_2peDjfKgeU2L6ns7zcM_rA"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">200000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Narr_n8s7D9guuUyj5DHsVY4Q5Q"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">28635</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="INF"
      id="Narr_X_2MY0kcJkG8PnhGN08Wsw"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">31068</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_PWh1FvmmTUy0suTu5AQJ_w_48_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17181</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_OKNm5AHOhEqIvFskrf7WeQ_48_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18641</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"
      decimals="INF"
      id="Narr_luvdcWOPgU6ViEIVCVXi3A"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"
      decimals="INF"
      id="Narr_ulq-pTN6UkaXZK19SZp45g"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"
      decimals="INF"
      id="Narr_aD0WCLGdLEyMh-MRy4B47g"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">24655000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"
      decimals="INF"
      id="Narr_dG2rRPbKn0elZCb88BYEog"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">24655000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"
      decimals="INF"
      id="Narr_LEqwjnVIzkmAe5stCL-Bag"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15243693</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"
      decimals="INF"
      id="Narr_G6INmdLlI0i5GtZQenZzpg"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15143683</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_dLK7YsKarky7PSunmkNOAQ"
      decimals="0"
      id="Tc_jCOp8m1v-UK7h7_KW8GnBw_49_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9146216</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassAMember_Z92D0tur7k-u3tbBMqN_lg"
      decimals="0"
      id="Tc_AZg1XSFX0kK4TXf_XKvCVQ_49_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9086210</us-gaap:CommonStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw"
      decimals="INF"
      id="Narr_cuuKWNZ5oUuJAkaVBUP-rA"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A"
      decimals="INF"
      id="Narr_6wCLd3q_JEi7kSx4fTA5Rw"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.60</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw"
      decimals="INF"
      id="Narr_4bLCKTDJDkOkzWn_2I_a4w"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">145000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A"
      decimals="INF"
      id="Narr_ggaMVYaqy0KklGMzgIhVsA"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">145000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw"
      decimals="INF"
      id="Narr_A1V3Qa6lBEq6eRtGbMYN6g"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A"
      decimals="INF"
      id="Narr_LYxFU-C52EyjniCfoFV6cQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_E7dE_BleS02kkKt_zZtk8A"
      decimals="0"
      id="Tc_I0RQSgtKJ0ehHEM5oqPVZA_50_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_CommonClassBMember_2Mz5ZufzQEmNpPu7I55LWw"
      decimals="0"
      id="Tc_OtF9PhKsA0KVOA1FJtWx8g_50_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_qRFyy0D_G0O5flnV1jDr3A_51_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">87812432</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_FZXPicvAY0G9UuNYZb35Hw_51_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">86893486</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_1PlKa4FvLkGeClOPd_4WeQ_52_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">60603056</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_42HV_zbTM0CxS6IacIjiLA_52_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">64910709</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_S0yleoDfvUKQ9eov15rMwg_53_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">157578885</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Mw2jFQJ0U0-_QmHQFLBLRA_53_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">160909046</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_9kc6DB0zIUiI9Sw02H8OFQ_54_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8086538</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HxQKtkryq0yrmEpjXnyCYQ_54_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8103503</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Hbr6QxdK5k2YVFHiJIqZyQ_55_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">165665423</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_-OlduVqFIEmIJ01OW9cIZg_55_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">169012549</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_6w31Ktucmkee1dhiX43Y4g_56_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">177027054</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Vh_aOEfJE0SkeYgOTDS0dw_56_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">179555552</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_RwtEgspXnUuB3S4P9PR0eA_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">66863502</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_yUSkcb1nyUe6ZDJoWCMQfA_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">72628126</us-gaap:Revenues>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew"
      decimals="0"
      id="Narr_NgFcF_z9AkeaBBCKv5w20w"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">437857</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_3Tsz8pPl-0S59_MFCYzCnA"
      decimals="0"
      id="Narr_Nu8CsPrHzEmiHPLrTI1S0Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1349331</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_sO4v208oBkGfz9jkUhCZHw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43356311</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_kqQcj38HGU2bZF18rjSv3w_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">45859671</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc__7sYkn26JUaFv8OEL4xihA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">23507191</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_5OLZFoXXakm7M-jTGaq5aw_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26768455</us-gaap:GrossProfit>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_6nLBAgvl_Ea8WqzLUJPsMw"
      decimals="0"
      id="Narr_2JuZ4nLWAEGIRYruHHXhaQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">77190</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember_ClrXIKaDvkynEKkj3w8NYg"
      decimals="0"
      id="Narr_3mzLYSFoI0a_Qv_qeEKxsA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_mQF5idb-SUyTbtwcXoExLQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18350359</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_ce7xPj-L-k2xxbEJBMVRLw_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18434898</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_3Fe7xnzOm0qJoAbo-9LzMw_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-3145836</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_qDQvAOXYe0mhuy83tYPIKg_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13997</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_1jHKLMRHMEyZmoVHWVxllw_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2010996</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_sGDAufgQqEGpjCD9ei64vA_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8347554</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeOther
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_KF1VWLr-dUCP2yNZEX_jjg_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">684809</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_6loZRyAE7U2piuO19fTudQ_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">540096</us-gaap:InterestIncomeOther>
    <us-gaap:InterestExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_hyhMs_w3Z0GaWvtAyLMH4Q_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10248</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_7A0iTs_qRE6FWrxNJWWhNg_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9669</us-gaap:InterestExpense>
    <cwco:ProfitLossFromSubsidiaries
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_UiQ0Y2OagUi0KNZObgeegg_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22275</cwco:ProfitLossFromSubsidiaries>
    <cwco:ProfitLossFromSubsidiaries
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_nvB2eyYWkkKeork-zuprnA_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">135675</cwco:ProfitLossFromSubsidiaries>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_otqwWCHNlESVxwAad1J-eA_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">55984</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_znCXc538dE6gG7N4NlJx3w_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">371019</us-gaap:IncomeLossFromEquityMethodInvestments>
    <us-gaap:UnrealizedGainLossOnDerivatives
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_94RMkeqQYk-4Wv0TVO117g_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">818000</us-gaap:UnrealizedGainLossOnDerivatives>
    <us-gaap:UnrealizedGainLossOnDerivatives
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_81ozG7Oo0UW21gNighFRdw_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-26000</us-gaap:UnrealizedGainLossOnDerivatives>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_W2p45ydbvEOxcLAEGX8Asw_16_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">52775</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_v_0YI1xTRUuIAsfKjROo0g_16_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">71825</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_ZvQ9kqzjp0SiM-8cUPquXw_17_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1623595</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_fE3nsnn850GPymQpKsVzVg_17_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1082946</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_djsU7ErQzEmol7W8JUCXDA_18_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3634591</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_AyZuabOSrkCC3bXxU7c9nA_18_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9430500</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Kk37k-VsSEe1rSXnwisYqw_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-447982</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_z_69UClgcUyWKHYFCndS8A_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">86724</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_WeHz9rEL0EKP_t87_rsvaA_20_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4082573</us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_OkK8iBg5SE-HDhhui7uriQ_20_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9343776</us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_1OUTSNQ--kih9gDEW6T1EQ_21_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">632915</us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity>
    <us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_h3DpH_dg7kGTYFtiDjpt7g_21_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">730005</us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_OYgQExi2m0mLzi-V21UvZA_22_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3449658</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_riMPHDDmH02rycmVUA2JVA_22_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8613771</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_ZlQ5rRSRBUSqrhVWe20b2Q_23_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2574079</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_nDeuJWgBV0ONWrnUaB-_DA_23_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-4902243</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Lp_Ga6MroEWIRHSVNqxG8Q_24_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">875579</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_ceuffMgClUCZ1vL6kGsWpA_24_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3711528</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_TqWWroDDV0W4k0URZWnQPg_27_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.23</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicShare
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_lWWAXf01Z0-KXWVFZfW5Xg_27_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.56</us-gaap:IncomeLossFromContinuingOperationsPerBasicShare>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_wU9dW2P0t0SpnPD32Lwybg_28_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">-0.17</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_iGyvtURCtEiPzgJW0sQoHQ_28_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">-0.32</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_gWZ6DXHrtU6Ph4ECGtfJIg_29_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.06</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_DEkxXEJdoke4AAlFz7piWA_29_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_17DPsdbLA0-7mLuFF5nSkg_32_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.23</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_iVLRsEyje0iwEbsFQz3J3Q_32_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.56</us-gaap:IncomeLossFromContinuingOperationsPerDilutedShare>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_ZQm3Ba0UYku8EQBI0dSJdQ_33_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">-0.17</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare>
    <us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_DeCojPa0Bk28XTCx8C0PWA_33_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">-0.32</us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_ofVfQM6K_U6zX42rfKdjyA_34_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.06</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Tc_Qj0l16MslE2378l6pPqqgQ_34_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Tc_2IHKhuo2-UGH__3tjV3gaQ_36_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.34</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="INF"
      id="Tc_a0uc1VMAbk6TSQLfztv4LQ_36_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.34</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_nkLCil26bkKFL945qqoyiQ_39_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15213816</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_cUw6L4S1e0OcqIYdKPGs2A_39_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15119305</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_3zqqAALNx0SPex2kkz-BjA_40_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15310145</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc__upSMz3noUuekmknGBP9DA_40_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15223955</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w"
      decimals="INF"
      id="Tc_7D-2SpP6JEa2T_Q2D32rkQ_4_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">33751</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w"
      decimals="0"
      id="Tc_UHvJrVctbkms5kEAsrAreg_4_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">20251</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA"
      decimals="INF"
      id="Tc_7eyNLp5PtEWS0PnJwbv0XA_4_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15049608</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1L5eh8AqREyvfk-r9DNPrA"
      decimals="0"
      id="Tc_ntGsfqCyA02f7551FhXNfw_4_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9029765</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_EgJEqOrdJUiL7Fjrd38w_Q"
      decimals="0"
      id="Tc_6bB1sdzWiUyBWTmO2pzRVQ_4_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">88356509</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_JPdJe-Ae6Em7c6Q2FrNNpA"
      decimals="0"
      id="Tc_xiCKb0vAFkGBm8twReR5RA_4_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">66352733</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_T-3D9wrDF0KEqPIYbp8ETA"
      decimals="0"
      id="Tc_03kuaSX9M06HHAtSaF8zYg_4_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">14193616</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ"
      decimals="0"
      id="Tc_VsCihQ3KVEuXRpqQEGyPPw_4_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">177952874</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_J5zpmKf9cEi3ywup8yTF9w_5_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">6123</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_NZsM_ozldkyRRPc7Fnxo2Q_5_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3674</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_0HfKvD5CsEK-f-aI6-ppRw_5_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">84610</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_7-UEL7eFE0e7PrHlqnQHHQ_5_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">50766</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_FRvc3kiEuUqkv11Q8G4Tzw_5_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-54440</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_U0CNZm8FHk6L88pNWuYsyQ_5_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_nFCz18675kG93JkrNo8Hvg_5_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_9Xh7CpqhlUmp4k4gyKS5jA_5_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_XZyA-6y6wU62mzAQoE9Jvw_6_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">-9465</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_uU65Yyzu-U2vo3rnxo2LFQ_6_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-5679</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_QIjXnomthUS9OTWyJc9N-A_6_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">9465</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_vEdqhuMgh0q2pgZfmJGgVQ_6_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5679</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_inWrq9gd6UacHoUy51Pz_Q_6_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_A1zZ79mbS0aQuHlyTvFawA_6_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_x0kzTx5mFkKS6LMzUBbhXw_6_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_jtH412GD4kKREjjQO5OCFg_6_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockRedeemedOrCalledDuringPeriodShares
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_e0b8fej1g0OjlS7MeMJGhw_7_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">176</us-gaap:StockRedeemedOrCalledDuringPeriodShares>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_Xh-MbRTbyUCSlWqp_PbPNQ_7_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">105</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodShares
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_qgDoD4Fp1Uu4Js40Du-UDg_7_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:StockRedeemedOrCalledDuringPeriodShares>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_0X11E__d0kekYtbo2AW4cA_7_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_wocBNI2KaEuJyAZpqu0Big_7_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1623</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_MXBdEjezyUi2nGeWAOTbhw_7_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_s-14THKJ-UOqFxcAveUCFw_7_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_oigYz1TISU6Mb3voYvKqxQ_7_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1728</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_tHs9NssPvkCvFCMHfS0ciA_8_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_xuIWQuJf8kmkBPuM56tfWw_8_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_4isRtQyiFkKTJnltqNe5jw_8_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_w7LULyBKak6UVzltXRTVDw_8_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_zkEK-wtxy0SJcZ_2JyzXvQ_8_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_oCQjsHfY3EejvSQe6yGnWQ_8_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3711528</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_gS0t1wzeSE2uscW1BQO7fQ_8_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">730005</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_48MdwhEbH02YqxUArR8-aQ_8_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4441533</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_XmQim_b4sk2PW3OnPFYJcQ_9_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">835</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_b8q0LVmKDUy8w0-CC9kQAw_9_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">500</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_h-eRc_kCeUGvdmKBvKdMpA_9_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_53kATl8Zz0WM75Kz2YPeEw_9_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_B91f67Yc6kmncY0rpZn5HA_9_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9661</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc__6lxTVOWWkiCqJlnNKzVAw_9_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_Rnb5c7bqGESyLpwFC1Q4dQ_9_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_2zrxCT4xEUml5kzK_Xnl1g_9_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10161</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_oflcbZd4r0m6UmOtdP8wjQ_10_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_Hsiip8HJxEGoKUeQ222aHA_10_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_WQAtYx-WAE-wMPo7LwCGTA_10_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_d79tos-wQ0eILGlAyR1elQ_10_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_r7YDX-29IU67nJNUQSdEBA_10_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_sFZ64A1kgEyDsDHg-qS6Fg_10_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5153552</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_NvXE3r9cFUW5p2qQ3ED2Ng_10_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_lChpQDfrh0qlcG57QTxuAQ_10_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5153552</us-gaap:DividendsCash>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_HxoV_Y_8yUO7N09qXdenRA_11_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_HeuSOBwclUuMsySq366TLA_11_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_OUTJ_bInEE6ZDmhgfzOeEA_11_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_fSEPYtak_kKfO5eQNlW4BA_11_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_9PPmIYAaeUyegoc2YtsOjQ_11_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2579882</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_wYmv_Y-ZsE6bKGQUKRHQPA_11_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_JIF-rQlCYESOhs2ZdKSntw_11_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-6820118</cwco:PercNonControllingInterestAtAcquisitionDate>
    <cwco:PercNonControllingInterestAtAcquisitionDate
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_IcqaNtD4vUCUZPWv4zQWbQ_11_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-9400000</cwco:PercNonControllingInterestAtAcquisitionDate>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="INF"
      id="Tc_owMGiWmMMUmYLvmmW7LAqw_12_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_RZsAIu0aIEW_f6NsMhZhGg"
      decimals="0"
      id="Tc_pVxYgNY3tEWmI6OrSBKwKA_12_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="INF"
      id="Tc_GMMSqqUJiE2mXPQ_y8Q1Jw_12_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Qp8-0fqqxEaMrwu_iwCEDQ"
      decimals="0"
      id="Tc_p47Aq3J-I02lW3O30Bwd_w_12_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_nxoka-quvkqJQel9nPYd5g"
      decimals="0"
      id="Tc_mMozRiQpu0qbS2X8F0LX3w_12_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1163261</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_eDxzftcjski4GaHtfYaU8g"
      decimals="0"
      id="Tc_noEa-gHnD0-Xbln_E-lVaA_12_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_-PZ9K-wfU0i4B-hPsFKcKQ"
      decimals="0"
      id="Tc_Hh2ggeSdS0mFVCya1XY0aQ_12_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_8j46ls5MzUqrYc8ugMPwFQ_12_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1163261</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw"
      decimals="INF"
      id="Tc_MK-tLfOlAEild1d-nkvgAA_13_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">31068</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_EfFVGjIgeEy1uk24CtnQDw"
      decimals="0"
      id="Tc_qudJzVql50SneKYKlKp2eQ_13_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18641</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw"
      decimals="INF"
      id="Tc_xetCI2azjEuMuXnzheF-TA_13_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15143683</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_dvPClbPmMUSQ6q8OvdUQFw"
      decimals="0"
      id="Tc_gpn7WbNJ0ES8b4TyJNyx4A_13_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9086210</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_ijhEl3qLT0SfYvzVe8CHrw"
      decimals="0"
      id="Tc_VPSRiwklqEigj5N_FFuoFQ_13_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">86893486</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_fPxCCfOb20e5coHSZY-Lsw"
      decimals="0"
      id="Tc_quUvohSZq02-EBxvwCH1Aw_13_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">64910709</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_V-5ogwZFlkWHNDZfe_CqzQ"
      decimals="0"
      id="Tc_uVvdriWhsUmvVLUGNl9mQg_13_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8103503</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_o1YKOiGow0K251J_c0veeA_13_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">169012549</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_wANwq7G_BEqRpv8m3e-gZA_14_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">8632</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc__HxrUFFFbUCSrZ35jkIM4g_14_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5179</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_k0G1DhP-1U2J8fsffCOLuA_14_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">88488</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_5vRv1WQJbkyU4BmpgUVXzA_14_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">53093</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_tJ9k9K8yTkyAGJXyAGJT9g_14_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-58272</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_BhhUUkKXJkuYeDUrWsVGeg_14_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_quyKrV716kuRP58BAo8tFw_14_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_0cXrrlrNTESiAcQgy9rZGA_14_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_4a_BjEehSUqZnIfRSgpFFg_15_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">-11522</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_hu9OzLQ1U0akHIZQFo_7Ew_15_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-6913</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_8TRijp_a2UGGuwbKxuvAKg_15_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">11522</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc__NG822LVZk6Ba8ZlfHW3EQ_15_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6913</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_E-EwmT4dqk2k0bxTwqayXw_15_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_zRhiEmbBiUycey5nrLz8oQ_15_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_21EpJWapIEqETY3XgvEWrw_15_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_wpHejB8VZUGgp21TpG1UxQ_15_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockRedeemedOrCalledDuringPeriodShares
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_eaXzExhfd0SOwEZYgiT3_A_16_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">1649</us-gaap:StockRedeemedOrCalledDuringPeriodShares>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_CFf-NSftukKFFkF37ML0Qg_16_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">989</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodShares
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_ng7XLeER_k2XB1WmpngYtA_16_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:StockRedeemedOrCalledDuringPeriodShares>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_dYzYyjYQ0kiXKjn9wPKNnA_16_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_-R0Uj4oA9EWDoL7yaDD6UA_16_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">15810</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_2nPDAZp8TEWvh3YNr2bmnw_16_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_o3nmdVqzq0KYzYAnVGaAFw_16_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:StockRedeemedOrCalledDuringPeriodValue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_9uQ9546lpUC193jpAZns6w_16_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16799</us-gaap:StockRedeemedOrCalledDuringPeriodValue>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_jeif0efhLE-i4RGggj0bdw_17_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_3usKyVhuOUWs59-LeblPig_17_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_1G93tWvkK02UXdzFvPqzsA_17_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_m7H4sCVCzk6gbYhRfSqDug_17_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_M-VjTrtIn0-L-q-0t95ACQ_17_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_AdkRbDJimEO3z0Dh6ltqEg_17_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">875579</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_0oW2jgGarE2iD9I7pGggvA_17_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">632915</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_E_DG2wMIAkCANRv9tuMzKA_17_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1508494</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_cj8GxZMDxkOuFeLO3VVYDg_18_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">2106</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_F0IU2ys99UqI-Rnf3NCZAg_18_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1263</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc__eV04HgeMkekrZmXUtq8AA_18_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_211d2pBPr0il9KjRqpamJw_18_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_NLlxIOlqbUaocjr7TYFXHA_18_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">15796</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_uz5vxvvlb0eSuG8RXvTzWQ_18_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_b9M-58erUE-m-MjDdZylJw_18_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_cWNWN1kRc0uHFFIcsYRn1A_18_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17059</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_8vFns_HysUK6l2tp5FDKsA_19_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_LV987k18ZkCIplpX6BESng_19_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_hrFyc_5NV0OUZfZ2QFVdqw_19_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_TAo2mljvdEC0mA0cNMt-WA_19_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_vF71LcRt2E24DTaUDJ0A0Q_19_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_azxLuYgQPE-xqGaQMT_WaQ_19_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5183232</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_caPGnh40qESaGD-pLnm17A_19_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">649880</us-gaap:DividendsCash>
    <us-gaap:DividendsCash
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_H5MUsvd6tkiLo9eiPnJylw_19_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5833112</us-gaap:DividendsCash>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="INF"
      id="Tc_zkSLRIvOrkWiJs_Fw20Xcw_20_2"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_VRD61ej_ikO-O1-zI5sbEQ"
      decimals="0"
      id="Tc_aTFj3y-02kC8g6XWN9hmqw_20_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="INF"
      id="Tc_6lbeA3MSGEq2h3FfmbXHYA_20_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_oPWLl7SIAEGQ7-4tX5oRhA"
      decimals="0"
      id="Tc_N50CQzQ0mEqeZPa8CBnDNA_20_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_HLQ_HwxHF0ewMzyJGCjYPA"
      decimals="0"
      id="Tc_AibIuA6uQkyN7V0zg6Xs_Q_20_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">977232</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_OAh23jBroEqd5qCs7b4TVg"
      decimals="0"
      id="Tc_EdLHx03lxkatG6gsko9I6A_20_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_pvrDy51QH026WKWkFYwQLg"
      decimals="0"
      id="Tc_zWJWKRZhBE62vWEwpDblsA_20_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_f3own5CZ5UGxGsnrnoK8xQ_20_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">977232</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng"
      decimals="INF"
      id="Tc_Nnfgxk4hPkmwJWp-ou5FEQ_21_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">28635</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_fTpJIg-tQUORR-qgQ2O8Ng"
      decimals="0"
      id="Tc_Aqmb2m1nqEiQ0huyv5vJBA_21_5"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17181</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SharesOutstanding
      contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ"
      decimals="INF"
      id="Tc_uRehl12aAE6lzdL0P_bRNg_21_7"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15243693</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_YFggBzDnWkuNcBugsiTnSQ"
      decimals="0"
      id="Tc_8VeDUUvfxkOOYekOiEF-jw_21_10"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9146216</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_S_EL5XcSjkKEALcifPnf3A"
      decimals="0"
      id="Tc_Smy1Mx_oxU6cHhu1SUh2Cw_21_13"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">87812432</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_qlfRbIlXskGozRKgpAjyQQ"
      decimals="0"
      id="Tc_HnxN7Rgy0EOxJq9AeNcKAA_21_16"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">60603056</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_NoncontrollingInterestMember_kmcR6mwf2kemN6tjJfw22Q"
      decimals="0"
      id="Tc_w9RmSFHlkEuIV2jzUInBSQ_21_19"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8086538</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_sQU0r24boEeUCCSYKLc_nQ_21_22"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">165665423</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_tyVbhrc3IE-Q3MPryRdVnQ_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">875579</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_W7UOSZ9diEOnoU7kTWuvTA_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3711528</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_89Z4y-H6CECMXtLwye9n5A_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-632915</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:NetIncomeLossAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc__Gigj-ud7kKUlHfmzxQmyQ_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-730005</us-gaap:NetIncomeLossAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_rd5b8pFqEE2kphloCaG82g_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1508494</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_1BjjJ9nMVk2R5hG0BvIqOA_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4441533</us-gaap:ProfitLoss>
    <cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_QWzvRZEa10mgv9huaXhsRw_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">963540</cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment>
    <cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_zOY1d5biX0eqKIkLum4Shg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3351842</cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment>
    <us-gaap:DepreciationAndAmortizationDiscontinuedOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_CGPUhkaQfU-5AWTnJLZhtQ_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4545</us-gaap:DepreciationAndAmortizationDiscontinuedOperations>
    <us-gaap:DepreciationAndAmortizationDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_nIsoZBK0SU27zPuQcX3KcQ_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4545</us-gaap:DepreciationAndAmortizationDiscontinuedOperations>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_wzkNuIGbukKtPOR9wDmhDA_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-53039</us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_k5Us0j1Ct0i1Q3-GtEQ-Uw_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-3528</us-gaap:DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses>
    <us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_bv6RMCGlbUyGmTRbY886_w_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1552955</us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal>
    <us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_kusYZq5rd0WJef2U_0K3xA_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1542328</us-gaap:DisposalGroupNotDiscontinuedOperationGainLossOnDisposal>
    <us-gaap:DepreciationAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc__xdLthAe3EarHqjazYLomA_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6921233</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_SqJxUmZVTkm_4hPbBjoI4A_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7406509</us-gaap:DepreciationAndAmortization>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_T3ZN6lNGrUChuinvXYETyw_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-204086</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_wdAZHWCdpUuqyKky7FjSeA_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-221829</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ProvisionForLoanAndLeaseLosses
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_9CMFv7GlNU2BuziVJPViIw_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProvisionForLoanAndLeaseLosses>
    <us-gaap:ProvisionForLoanAndLeaseLosses
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_bBtwumnPi0iFac_8i_O-hA_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">129107</us-gaap:ProvisionForLoanAndLeaseLosses>
    <us-gaap:UnrealizedGainLossOnDerivatives
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_QpT7nU46TE6t3vRs4sVHtw_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">818000</us-gaap:UnrealizedGainLossOnDerivatives>
    <us-gaap:UnrealizedGainLossOnDerivatives
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_SWWCA0eCoEWg4GjQ4Kn6aQ_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-26000</us-gaap:UnrealizedGainLossOnDerivatives>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_rkO9TTVqQUWek63xr6XvXg_16_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">977232</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc__U7h-fFMQ0yKElMKKMakSg_16_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1163261</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_KeO4paFLHk6aEasFEBjoFg_17_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-245836</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Q6fPEIQIYEGJDK9ndGLJsg_17_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13997</us-gaap:GainLossOnDispositionOfAssets1>
    <cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_r0qjmCzHE02AIb1hbQKXEA_18_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">78259</cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries>
    <cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_isP-L2fnjEO4K6UnjZNigA_18_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">506694</cwco:IncomeLossFromEquityMethodInvestmentsAndSubsidiaries>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_YcwodAVtuU2QIP8q9h8iqA_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">454500</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:EquityMethodInvestmentDividendsOrDistributions
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_doGQZYizf0yQSEOpQAOvTQ_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">318150</us-gaap:EquityMethodInvestmentDividendsOrDistributions>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Xz29rE0CQkGDmIXCuLGe2A_20_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2900000</us-gaap:GoodwillImpairmentLoss>
    <cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_CwDRiAQ-OESXpX04moBb0A_23_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5878771</cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset>
    <cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_phql0XelEE21aWVjl6Ucsg_23_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2541096</cwco:IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Tj55pBioBECGFn4IxR-Sxg_24_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-293254</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_g556ImKzL0Gn1I6FmVxrQw_24_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">102551</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_AF0MlJE01ka-j6gefHEEng_25_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">711615</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_dVL51D2NMkmSv7J5zIAkTQ_25_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">629734</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_UX0vKCifOkmMFQ6fYQBOhw_26_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-112598</cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability>
    <cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_9hkSjKnkcU-eSKeHm_CmFw_26_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-480456</cwco:IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInOperatingLiabilities
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_tfRioITLyESR13Kt6rqE7A_27_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">48593</us-gaap:IncreaseDecreaseInOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_LiSQ17ehl0qNJmNobUY1GA_28_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">467710</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_wT2J9OMP5Ui0EBDGdOijQA_28_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1700</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_0nYoN2e3PUWXMbhSvBsLuQ_29_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8587602</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_KVcVH9dwG0qBwfFq25bnUQ_29_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18970938</us-gaap:NetCashProvidedByUsedInOperatingActivitiesContinuingOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_xE-IhY6uMk2CxoosOh3HxQ_30_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1621292</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_WO-GjnClCUKp4coUAQbstA_30_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1635646</us-gaap:CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_UnRKFhnRLEWnGUHWxHaUSw_31_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6966310</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_1s4uiwjTmUWXPauPxgAR-w_31_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17335292</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <cwco:PaymentsToAcquireCertificatesOfDeposit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_uOW7oiDsREiSgAwiJDV9FQ_34_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</cwco:PaymentsToAcquireCertificatesOfDeposit>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_SD_6YQfSBU-Mht9x9jAolA_35_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1490012</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_ZhfJSvTY-kiJqotkw0tVHw_35_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1728393</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_6IXK6xF0ekms-meO-KJcuQ_36_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">45560</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_g9lPhrHuO0atN46BSUDKrQ_36_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8638</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries
      contextRef="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_JfcwYyBEakO8TFxMeFrvMA"
      decimals="0"
      id="Tc_cxVbhlT-_0OrHKnofFvZcA_37_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries>
    <us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries
      contextRef="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_AerexIndustriesIncMember_IqB3OicrFkeiNIeeIjR-Uw"
      decimals="0"
      id="Tc_Ngq_6N674UapHwCRbuYDuQ_37_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8500000</us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries>
    <us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries
      contextRef="Duration_1_1_2021_To_12_31_2021_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_-yZiGEh88k22O15lfBATRw"
      decimals="0"
      id="Tc_z9pV9K90WEOyUBc7aV99LQ_38_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries>
    <us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries
      contextRef="Duration_1_1_2020_To_12_31_2020_dei_LegalEntityAxis_cwco_PercWaterCorporationMember_MMJbH0DeKk6fK9CLog1cSg"
      decimals="0"
      id="Tc_BW1exsePdkWwbNZfRtFO_g_38_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">900000</us-gaap:PaymentsToAcquireAdditionalInterestInSubsidiaries>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_D6sR8gUSPUya4_O6wUNGLA_39_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-3944452</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_e6lLyMQyZkqtd-F_c7upzg_39_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-11119755</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_JTKOzDGatkKVm4lTTgz1jg_42_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5151667</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_r99oQKKHF0WrtZ9H3jg5VA_42_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5133727</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_cvwLb96UlEC54np8s-uu2Q_43_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11015</us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock>
    <us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Xy3HcY_ZnU6uA8BnX6w7Yw_43_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11990</us-gaap:PaymentsOfDividendsPreferredStockAndPreferenceStock>
    <us-gaap:PaymentsToMinorityShareholders
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_W3fCPQC440ep4aEcmBdwBw_44_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">649880</us-gaap:PaymentsToMinorityShareholders>
    <us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_pK4R09WPxkmU-RPtuO2EMA_45_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-16799</us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock>
    <us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_k5KvudtLLEe0rW1autpC9g_45_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1728</us-gaap:ProceedsFromRepurchaseOfRedeemablePreferredStock>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_AuNAZUTkRECqUEdhQ863fw_46_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17059</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Cjw6OT8_X0SXFI8-Ah9m4Q_46_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10161</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_9Oxbbz9NqEC6C8p-Aj164Q_47_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">49729</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_z11q_8weBkeXrb_i48ie6A_47_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">32642</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_DyJooMZQZkqnCFN03HlYwg_48_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-5862031</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_87YcPb1I1EOGfL_pPp6EFQ_48_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-5169926</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_HiD_SD3_30ihnZXyu1bOuA_49_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2840173</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_wdoD8NcrL0-lfZvursxj6g_49_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1045611</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_9xirQr9MZkCgQYzgzGzGEg_50_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43794150</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ"
      decimals="0"
      id="Tc_22-VHvnh5EaHvQ938n8hXQ_50_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">42071083</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_NMVnL4-_NkCYEDLRNjJXJA_51_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">154130</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ"
      decimals="0"
      id="Tc_XbPWQXCXlUqJRFXQrmfBKA_51_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">831586</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ovVEbX_xoEmzazJe-L_vBQ_52_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">750048</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_u8UwxANWDUecZnCDeuk4rQ_52_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">154130</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ir0xOxSRSUaVjUY8MtEBsA_53_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">40358059</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_jp5l1Qk2KU-UgtjxP6famQ_53_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43794150</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:NatureOfOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_WsKgQSLpWUaA1rwWZqjDzA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;1. Principal activity&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Consolidated Water Co. Ltd. and its subsidiaries (collectively, the &#x201c;Company&#x201d;) supply potable water, treat water for reuse and provide water-related products and services to customers in the Cayman Islands, The Bahamas, the United States and the British Virgin Islands. The Company produces potable water from seawater using reverse osmosis technology and sells this water to a variety of customers, including public utilities, commercial and tourist properties, residential properties and government facilities. The Company designs, builds and sells water production and water treatment infrastructure and manages water infrastructure for commercial and governmental customers. The Company also manufactures a wide range of specialized and custom water industry related products and provides design, engineering, operating and other services applicable to commercial, municipal and industrial water production, supply and treatment.&lt;/p&gt;</us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_K5Uim_6Zh068y9a6e1eOBw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;2. Accounting policies&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Basis of preparation:&lt;/b&gt; The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Use of estimates:&lt;/b&gt; The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Significant items subject to estimates and assumptions include the carrying value of property, plant and equipment, intangible assets, goodwill and put/call options. Actual results could differ significantly from such estimates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Basis of consolidation:&lt;/b&gt; The accompanying consolidated financial statements include the accounts of the Company&#x2019;s (i)&#160;wholly-owned subsidiaries, Aerex Industries,&#160;Inc. (&#x201c;Aerex&#x201d;), Aquilex,&#160;Inc. (&#x201c;Aquilex&#x201d;), Cayman Water Company Limited (&#x201c;Cayman Water&#x201d;), Ocean Conversion (Cayman) Limited (&#x201c;OC-Cayman&#x201d;), DesalCo Limited (&#x201c;DesalCo&#x201d;), Consolidated Water Cooperatief, U.A. (&#x201c;CW-Cooperatief&#x201d;), Consolidated Water U.S. Holdings,&#160;Inc. (&#x201c;CW-Holdings&#x201d;); and (ii)&#160;majority-owned subsidiaries Consolidated Water (Bahamas)&#160;Ltd. (&#x201c;CW-Bahamas&#x201d;), N.S.C. Agua, S.A. de C.V. (&#x201c;NSC&#x201d;), Aguas de Rosarito S.A.P.I. de C.V. (&#x201c;AdR&#x201d;), and PERC Water Corporation ("PERC"). The Company&#x2019;s investment in its affiliate Ocean Conversion (BVI)&#160;Ltd. (&#x201c;OC-BVI&#x201d;) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;On January 24, 2020, as a result of CW-Holdings' exercise of a call option, CW-Holdings purchased the remaining&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;49%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; ownership interest in Aerex for &lt;/span&gt;&lt;span style="background:#ffffff;"&gt;$8,500,000&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;&#160;in cash. After giving effect to this purchase, CW-Holdings owns&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;100%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; of the outstanding capital stock of Aerex. On August 11, 2020, CW-Holdings purchased an additional&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;10%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; of the ownership of PERC for &lt;/span&gt;&lt;span style="background:#ffffff;"&gt;$900,000&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;, increasing its ownership of this subsidiary to&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;61%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Foreign currency:&lt;/b&gt;&#160;The Company&#x2019;s reporting currency is the United States dollar (&#x201c;US$&#x201d;). The functional currency of the Company and its subsidiaries (other than NSC, AdR and CW-Cooperatief) is the currency for each respective country. The functional currency for NSC, AdR and CW-Cooperatief is the US$. NSC and AdR conduct business in US$ and Mexican pesos and CW-Cooperatief conducts business in US$ and euros. The exchange rates for the Cayman Islands dollar and the Bahamian dollar are fixed to the US$. The exchange rates for conversion of Mexican pesos and euros into US$ vary based upon market conditions. Net foreign currency gains arising from transactions and re-measurements were $32,594 and $68,818 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and are included in &#x201c;Other income (expense)&#160;- Other&#x201d; in the accompanying consolidated statements of income.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cash and cash equivalents:&lt;/b&gt; Cash and cash equivalents consist of demand deposits at banks and highly liquid deposits at banks with an original maturity of three&#160;months or less. Cash and cash equivalents as of December&#160;31, 2021 and 2020 &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;include $7.4 million and $8.5 million, respectively, of certificates of deposits with an original maturity of three&#160;months or less.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December&#160;31, 2021, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $7.8 million. As of December&#160;31, 2021, the Company held cash in foreign bank accounts of approximately $33.1 million, which includes a $2.5 million certificate of deposit with an original maturity of six months.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Certain transfers from the Company&#x2019;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. As of December&#160;31, 2021, the equivalent United States dollar cash balances for deposits held in The Bahamas were approximately $6.4 million.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Accounts receivable and allowance for doubtful accounts:&lt;/b&gt; Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. &lt;span style="background:#ffffff;"&gt;Trade accounts receivable also represent our unconditional right, subject only to the passage of time, to receive consideration arising from our performance under contracts with customers. Trade accounts receivable include amounts billed and billable on construction contracts, service and maintenance contracts and contracts for the sale of goods. Billed contract receivables have been invoiced to customers based on contracted amounts. &lt;/span&gt;The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable balance. The Company determines the allowance for doubtful accounts based on historical write-off experience and&#160;monthly review of delinquent accounts. Past due balances are reviewed individually for collectability and disconnection. Account balances are charged off against the allowance for doubtful accounts after all means of collection have been exhausted and the potential for recovery is considered by management to be remote. &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Inventory:&lt;/b&gt; Inventory primarily includes consumables stock and spare parts stock that are valued at cost, less an allowance for obsolescence, with cost determined on the first-in, first-out basis. Inventory also includes potable water held in the Company&#x2019;s reservoirs. The carrying amount of the water inventory is the lower of the average cost of producing water during the&#160;year or its net realizable value.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;background:#ffffff;"&gt;Contract assets and liabilities&lt;/b&gt;&lt;span style="background:#ffffff;"&gt;: Billing practices for the Company&#x2019;s contracts are governed by the contract terms of each project based upon costs incurred, achievement of milestones or predetermined schedules. Billings do not necessarily correlate with revenue recognized over time using the direct inputs method of accounting. &lt;/span&gt;The Company records contract assets and contract liabilities to account for these differences in timing.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"&gt;Contract assets, which include costs and estimated earnings in excess of billings on uncompleted contracts, arise when the Company recognizes revenue for services performed under its construction and manufacturing contracts, but the Company is not yet entitled to bill the customer under the terms of the contract. Contract liabilities, which include billings in excess of costs and estimated earnings on uncompleted contracts, represent the Company's obligation to transfer goods or services to a customer for which the Company has been paid by the customer or for which the Company has billed the customer under the terms of the contract. Revenue for future services reflected in this account are recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts are typically resolved within one year and are not &lt;span style="background:#ffffff;"&gt;considered&lt;/span&gt; significant financing components.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;The Company considers retention that is withheld on progress billings as not creating an unconditional right to payment until contractual milestones are reached (typically substantial completion). Accordingly, withheld retention is considered a component of contracts assets and liabilities until finally billed to the customer, when obligations have been satisfied and the right to receipt is subject only to the passage of time. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;The Company&#x2019;s contract assets and liabilities are reported in a net asset or liability position on a contract-by-contract basis at the end of each reporting period. The Company classifies contract assets and liabilities related to construction and manufacturing contracts in current assets and current liabilities as they will be liquidated in the normal course of contract completion, although this may require more than one year.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Property, plant and equipment, net:&lt;/b&gt; Property, plant and equipment is stated at cost less accumulated depreciation. Depreciation is calculated using a straight-line method with an allowance for estimated residual values. Rates are determined based on the estimated useful lives of the assets as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;4 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Distribution system&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Office furniture, fixtures and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Shorter of 5 years or lease term&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lab equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the&#160;month the asset is placed in service. Additions to construction in progress are comprised of the cost of the contracted services, direct labor and materials.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Interest costs directly attributable to the acquisition and construction of qualifying assets, which are assets that necessarily take a substantial amount of time to be ready for their intended use, are added to the cost of those assets until such time as the assets are substantially ready for use. No interest was capitalized during the years ended December 31, 2021 or 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Long-lived assets:&lt;/b&gt; Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, the Company recognizes an impairment loss only if their carrying amounts are not recoverable through their undiscounted cash flows and measures the impairment loss based on the difference between the carrying amounts and estimated fair values.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Goodwill and intangible assets:&lt;/b&gt; Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. The Company evaluates the possible impairment of goodwill annually as part of its reporting process for the fourth quarter of each fiscal&#160;year. Management identifies the Company&#x2019;s reporting units, which consist of &#160;retail, bulk, services, and manufacturing, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. The Company determines the fair value of each reporting unit and compares the fair value to the carrying amount of the reporting unit. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;For the&#160;years ended December&#160;31, 2021 and 2020, the Company estimated the fair value of its reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company also estimated the fair value of each of it reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company weighted the fair values estimated for each of its reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings the Company &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;applied to each method for the years ended December&#160;31, 2021 and 2020 were 80% to the discounted cash flow method and 20% to the guideline public company method.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-style:italic;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The fair values the Company estimated for its retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by 32%, 51%, 15%, and 15% respectively, as of December 31, 2021. The fair values the Company estimated for its retail, bulk, and services reporting units exceeded their carrying amounts by 101%, 49% and 17%, respectively, as of December 31, 2020. While the fair value the Company estimated for its manufacturing reporting unit exceeded its carrying value by 31% as of December 31, 2020, due to new information the Company obtained in 2021, the Company was required to record an impairment loss for its manufacturing reporting unit&#x2019;s goodwill in 2021, as discussed in paragraphs that follow.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;Approximately 80% of Aerex&#x2019;s revenue, and 89% of Aerex&#x2019;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#x2019;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, the Company updated its projections for its manufacturing reporting unit&#x2019;s future cash flows. Such projections assumed, in part, that Aerex&#x2019;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, the Company tested its manufacturing reporting unit&#x2019;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As a result of these impairment tests, the Company determined that the estimated fair value of its manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years. The Company&#x2019;s updated sales estimate for this customer based on this new information was substantially below the sales the Company anticipated to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections the Company prepared for purposes of testing its manufacturing reporting unit&#x2019;s goodwill for possible impairment as of December 31, 2020. Aerex&#x2019;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by continuing negative economic conditions, which have increased Aerex&#x2019;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, the Company believes, also adversely affected the overall financial condition of Aerex&#x2019;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#x2019;s former major customer, and present weak economic conditions that the Company believes will continue into 2022, the Company updated its projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, the Company determined that the carrying value of its manufacturing reporting unit exceeded its fair value by $2.9 million, and the Company recorded an impairment loss to reduce its manufacturing reporting unit&#x2019;s goodwill by this amount for the three months ended June 30, 2021.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#x2019;s manufacturing reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that Aerex&#x2019;s discounted future cash inflows will be less than its present expectation, the Company may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of its manufacturing reporting unit&#x2019;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on the Company&#x2019;s consolidated results of operations.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#x2019;s services reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that PERC&#x2019;s discounted future cash inflows will be less than its present expectation, the Company may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of its services reporting unit&#x2019;s goodwill of $5,320,416 and its &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on the Company&#x2019;s consolidated results of operations.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Investments:&lt;/b&gt; Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost. The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation. The Company recognizes impairment losses on declines in the fair value of the stock of investees that are other than temporary.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Other assets:&lt;/b&gt; Under the terms of CW-Bahamas&#x2019; contract with the Water and Sewerage Corporation of The Bahamas (&#x201c;WSC&#x201d;) to supply water from its Blue Hills desalination plant, CW-Bahamas was required to reduce the amount of water lost by the public water distribution system on New Providence Island, The Bahamas, over a one-year period by 438 million gallons, a requirement CW-Bahamas met during 2007. The Company was solely responsible for the engineering, labor and materials costs incurred to reduce the amount of lost water, which were capitalized and are being amortized on a straight-line basis over the original remaining life of the Blue Hills contract. Such costs are included in other assets and aggregated approximately $3.5 million as of December&#160;31, 2021 and 2020. Accumulated amortization for these costs was approximately $2.7 million and $2.5 million as of December&#160;31, 2021 and 2020, respectively. Amortization expense for these costs was $179,353 for the&#160;years ended December&#160;31, 2021 and 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Income taxes:&lt;/b&gt; The Company accounts for the income taxes arising from the operations of its United States subsidiaries under the asset and liability method. Deferred tax assets and liabilities, if any, are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the&#160;years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to the extent any deferred tax asset may not be realized.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company is not presently subject to income taxes in the other countries in which it operates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue recognition:&lt;/b&gt; Revenue is recognized when control of the promised goods or services is transferred to the Company&#x2019;s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the Company&#x2019;s revenue disaggregated by revenue source.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Retail revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,104,953&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,952,370&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Bulk revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,800,869&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,312,546&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Services revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,884,857&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,937,859&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Manufacturing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,072,823&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,425,351&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Retail revenue&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company produces and supplies water to end-users, including residential, commercial and governmental customers in the Cayman Islands under an exclusive retail license issued to Cayman Water by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman Island. Customers are billed on a&#160;monthly basis based on metered consumption and bills are typically collected within 30 to &lt;span style="-sec-ix-hidden:Hidden_diVp5qBtB0KjZqeIyo-3cQ;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;45&#160;days&lt;/span&gt;&lt;/span&gt; after the billing date. Receivables not collected within 45&#160;days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than 1% of the Company&#x2019;s total retail sales.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company recognizes revenue from water sales at the time water is supplied to the customer&#x2019;s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each&#160;month. All retail water contracts are&#160;month-to-month contracts. The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its retail water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-style:italic;"&gt;Bulk revenue&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company produces and supplies water to government-owned distributors in the Cayman Islands and The Bahamas.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;OC-Cayman provides bulk water to the Water Authority-Cayman (&#x201c;WAC&#x201d;), a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes such water to properties in Grand Cayman outside of Cayman Water&#x2019;s retail license area.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company sells bulk water in The Bahamas through its majority-owned subsidiary, CW-Bahamas, under two agreements with the Water and Sewerage Corporation of The Bahamas (&#x201c;WSC&#x201d;), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. CW-Bahamas also sold water to a private resort on Bimini through December 18, 2020, which generated revenue of approximately $127,000 for the year ended December 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its bulk water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Services and Manufacturing revenue&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company provides design, engineering, management, procurement and construction services for desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas and the British Virgin Islands.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company also designs, builds, sells, operates and manages water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the U.S.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company, through Aerex, is a custom and specialty manufacturer of water treatment-related systems and products applicable to commercial, municipal and industrial water production. Substantially all of Aerex&#x2019;s customers are U.S. companies.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company generates construction and services revenue from DesalCo and PERC, and generates manufacturing revenue from Aerex.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company recognizes &lt;span style="background:#ffffff;"&gt;revenue for its construction and its specialized/custom manufacturing contracts&#160;&lt;/span&gt;over time under the input method using costs incurred (which represents work performed) to date relative to total estimated costs at completion to measure progress toward satisfying its performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials and amounts payable to subcontractors. The Company follows this method since it can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, the Company records revenue and recognizes profit or loss as work on the contract progresses. The Company estimates total project costs and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and updates these estimates as work on the contract progresses. The cumulative amount of revenue recorded on a contract at a specified point in time is that&#160;percentage of total estimated revenue that incurred costs to date comprises of estimated total contract costs. If, as work progresses, the actual contract costs exceed estimates, the profit recognized on revenue from that contract decreases. The Company recognizes the full amount of any estimated loss on a contract at the time the estimates indicate such a loss. Any contract assets are classified as current assets. Contract liabilities on uncompleted contracts, if any, are classified as current liabilities.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its services agreements and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Practical Expedients and Exemptions&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company does not disclose the value of unsatisfied performance obligations for (i)&#160;contracts with an original expected length of one&#160;year or less and (ii)&#160;contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Comparative amounts:&lt;/b&gt; Certain amounts presented in the financial statements previously issued for 2020 have been reclassified to conform to the current&#160;year&#x2019;s presentation.&lt;/p&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_to_NzJ4hX0CBCzVdDEn5iQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Basis of preparation:&lt;/b&gt; The consolidated financial statements presented are prepared in accordance with the accounting principles generally accepted in the United States of America.&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_Im48kwj7uEuizSPwUheevw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Use of estimates:&lt;/b&gt; The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Significant items subject to estimates and assumptions include the carrying value of property, plant and equipment, intangible assets, goodwill and put/call options. Actual results could differ significantly from such estimates.&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_qAxdohxVPkK6Po3l6HsCFg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Basis of consolidation:&lt;/b&gt; The accompanying consolidated financial statements include the accounts of the Company&#x2019;s (i)&#160;wholly-owned subsidiaries, Aerex Industries,&#160;Inc. (&#x201c;Aerex&#x201d;), Aquilex,&#160;Inc. (&#x201c;Aquilex&#x201d;), Cayman Water Company Limited (&#x201c;Cayman Water&#x201d;), Ocean Conversion (Cayman) Limited (&#x201c;OC-Cayman&#x201d;), DesalCo Limited (&#x201c;DesalCo&#x201d;), Consolidated Water Cooperatief, U.A. (&#x201c;CW-Cooperatief&#x201d;), Consolidated Water U.S. Holdings,&#160;Inc. (&#x201c;CW-Holdings&#x201d;); and (ii)&#160;majority-owned subsidiaries Consolidated Water (Bahamas)&#160;Ltd. (&#x201c;CW-Bahamas&#x201d;), N.S.C. Agua, S.A. de C.V. (&#x201c;NSC&#x201d;), Aguas de Rosarito S.A.P.I. de C.V. (&#x201c;AdR&#x201d;), and PERC Water Corporation ("PERC"). The Company&#x2019;s investment in its affiliate Ocean Conversion (BVI)&#160;Ltd. (&#x201c;OC-BVI&#x201d;) is accounted for using the equity method of accounting. All significant intercompany balances and transactions have been eliminated in consolidation.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;On January 24, 2020, as a result of CW-Holdings' exercise of a call option, CW-Holdings purchased the remaining&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;49%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; ownership interest in Aerex for &lt;/span&gt;&lt;span style="background:#ffffff;"&gt;$8,500,000&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;&#160;in cash. After giving effect to this purchase, CW-Holdings owns&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;100%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; of the outstanding capital stock of Aerex. On August 11, 2020, CW-Holdings purchased an additional&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;10%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt; of the ownership of PERC for &lt;/span&gt;&lt;span style="background:#ffffff;"&gt;$900,000&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;, increasing its ownership of this subsidiary to&#160;&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;61%&lt;/span&gt;&lt;span style="background:#ffffff;"&gt;.&lt;/span&gt;&lt;/p&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="As_Of_1_24_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_-rAQ5puBFEGgq1eq5MMXmA"
      decimals="2"
      id="Narr_fdQOxWgIv0CfUPKrLmRgKw"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.49</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="Duration_1_24_2020_To_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_DfTzkZcxR0iDw2oJVTFipQ"
      decimals="0"
      id="Narr_xkNylLXEu0-dEI2pEdCh8A"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8500000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="As_Of_1_24_2020_srt_OwnershipAxis_cwco_AerexIndustriesIncMember_tok_x6VAPUmD3EIwXExBnA"
      decimals="2"
      id="Narr_cY760S7iUUukcqZw-2Ywsg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">1</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="As_Of_8_11_2020_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_fVPx_MibB0OMJNw6Y5r5GQ"
      decimals="2"
      id="Narr_NFMkpaCgYka1HRdyu20t0g"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.10</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="Duration_8_11_2020_To_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_2IXccD9r5kG85vF-cpFJhQ"
      decimals="0"
      id="Narr_IgQZeE3AxEWTgLTj16SXTw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">900000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:MinorityInterestOwnershipPercentageByParent
      contextRef="As_Of_8_11_2020_srt_OwnershipAxis_cwco_PercWaterCorporationMember_SmEMh4cxdEiHJigWEhXVQg"
      decimals="2"
      id="Narr_XNoj-dbZp0ewn6XlfjL4_w"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.61</us-gaap:MinorityInterestOwnershipPercentageByParent>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_tKrHZ-1R4kq47b2VGqzpRw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Foreign currency:&lt;/b&gt;&#160;The Company&#x2019;s reporting currency is the United States dollar (&#x201c;US$&#x201d;). The functional currency of the Company and its subsidiaries (other than NSC, AdR and CW-Cooperatief) is the currency for each respective country. The functional currency for NSC, AdR and CW-Cooperatief is the US$. NSC and AdR conduct business in US$ and Mexican pesos and CW-Cooperatief conducts business in US$ and euros. The exchange rates for the Cayman Islands dollar and the Bahamian dollar are fixed to the US$. The exchange rates for conversion of Mexican pesos and euros into US$ vary based upon market conditions. Net foreign currency gains arising from transactions and re-measurements were $32,594 and $68,818 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and are included in &#x201c;Other income (expense)&#160;- Other&#x201d; in the accompanying consolidated statements of income.&lt;/p&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_AXo9N0Geq0W1gNeq2p6x_Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">32594</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_918Q324UW0CAQdzalcYvpg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">68818</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_RcjrfE0C8EmpzFPnGMrIJA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cash and cash equivalents:&lt;/b&gt; Cash and cash equivalents consist of demand deposits at banks and highly liquid deposits at banks with an original maturity of three&#160;months or less. Cash and cash equivalents as of December&#160;31, 2021 and 2020 &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;include $7.4 million and $8.5 million, respectively, of certificates of deposits with an original maturity of three&#160;months or less.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December&#160;31, 2021, the Company had deposits in U.S. banks in excess of federally insured limits of approximately $7.8 million. As of December&#160;31, 2021, the Company held cash in foreign bank accounts of approximately $33.1 million, which includes a $2.5 million certificate of deposit with an original maturity of six months.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Certain transfers from the Company&#x2019;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of The Bahamas. As of December&#160;31, 2021, the equivalent United States dollar cash balances for deposits held in The Bahamas were approximately $6.4 million.&lt;/p&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ"
      decimals="-5"
      id="Narr_aBhzXoqdjkeGo0Yb72BzbQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7400000</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_VljHS7TLeEuM1EZJT4Aegw"
      decimals="-5"
      id="Narr_PsPGrkNZ4EeJhjIN7vLv1g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8500000</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashUninsuredAmount
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="-5"
      id="Narr_33fr4dqRcUG5XLQb3wBkzQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7800000</us-gaap:CashUninsuredAmount>
    <cwco:CashAndRestrictedCashEquivalentsHeldInForeignBank
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="-5"
      id="Narr_jB0Qka9yYEGJTnR7kEeXpA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">33100000</cwco:CashAndRestrictedCashEquivalentsHeldInForeignBank>
    <cwco:DepositsHeldInForeignBank
      contextRef="As_Of_12_31_2021_us-gaap_CashAndCashEquivalentsAxis_us-gaap_CertificatesOfDepositMember_tvydeebLdE6-et2Yob6nHQ"
      decimals="-5"
      id="Narr_I_DkJkOqSUmTV4hYI2hY5Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</cwco:DepositsHeldInForeignBank>
    <cwco:DepositsHeldInForeignBank
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="-5"
      id="Narr_3xkTegBvZ0ayQoFtaxkL6g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6400000</cwco:DepositsHeldInForeignBank>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_wb2xeYc6Tk6CRNWhbqeNoQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Accounts receivable and allowance for doubtful accounts:&lt;/b&gt; Accounts receivable are recorded at invoiced amounts based on meter readings, contractual amounts, fixed fees plus reimbursables or time and materials per contractual agreements. &lt;span style="background:#ffffff;"&gt;Trade accounts receivable also represent our unconditional right, subject only to the passage of time, to receive consideration arising from our performance under contracts with customers. Trade accounts receivable include amounts billed and billable on construction contracts, service and maintenance contracts and contracts for the sale of goods. Billed contract receivables have been invoiced to customers based on contracted amounts. &lt;/span&gt;The allowance for doubtful accounts is the Company&#x2019;s best estimate of the amount of probable credit losses in the Company&#x2019;s existing accounts receivable balance. The Company determines the allowance for doubtful accounts based on historical write-off experience and&#160;monthly review of delinquent accounts. Past due balances are reviewed individually for collectability and disconnection. Account balances are charged off against the allowance for doubtful accounts after all means of collection have been exhausted and the potential for recovery is considered by management to be remote. &lt;/p&gt;</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_HuKVkSojnkWDo7ZUTrcfUw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Inventory:&lt;/b&gt; Inventory primarily includes consumables stock and spare parts stock that are valued at cost, less an allowance for obsolescence, with cost determined on the first-in, first-out basis. Inventory also includes potable water held in the Company&#x2019;s reservoirs. The carrying amount of the water inventory is the lower of the average cost of producing water during the&#160;year or its net realizable value.&lt;/p&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_umSbwaQelUOpLO87Rqh-EQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;background:#ffffff;"&gt;Contract assets and liabilities&lt;/b&gt;&lt;span style="background:#ffffff;"&gt;: Billing practices for the Company&#x2019;s contracts are governed by the contract terms of each project based upon costs incurred, achievement of milestones or predetermined schedules. Billings do not necessarily correlate with revenue recognized over time using the direct inputs method of accounting. &lt;/span&gt;The Company records contract assets and contract liabilities to account for these differences in timing.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"&gt;Contract assets, which include costs and estimated earnings in excess of billings on uncompleted contracts, arise when the Company recognizes revenue for services performed under its construction and manufacturing contracts, but the Company is not yet entitled to bill the customer under the terms of the contract. Contract liabilities, which include billings in excess of costs and estimated earnings on uncompleted contracts, represent the Company's obligation to transfer goods or services to a customer for which the Company has been paid by the customer or for which the Company has billed the customer under the terms of the contract. Revenue for future services reflected in this account are recognized, and the liability is reduced, as the Company subsequently satisfies the performance obligation under the contract.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:12.0pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts are typically resolved within one year and are not &lt;span style="background:#ffffff;"&gt;considered&lt;/span&gt; significant financing components.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;The Company considers retention that is withheld on progress billings as not creating an unconditional right to payment until contractual milestones are reached (typically substantial completion). Accordingly, withheld retention is considered a component of contracts assets and liabilities until finally billed to the customer, when obligations have been satisfied and the right to receipt is subject only to the passage of time. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;The Company&#x2019;s contract assets and liabilities are reported in a net asset or liability position on a contract-by-contract basis at the end of each reporting period. The Company classifies contract assets and liabilities related to construction and manufacturing contracts in current assets and current liabilities as they will be liquidated in the normal course of contract completion, although this may require more than one year.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_wjzYq-87a0-oMUCRMMNe3A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Property, plant and equipment, net:&lt;/b&gt; Property, plant and equipment is stated at cost less accumulated depreciation. Depreciation is calculated using a straight-line method with an allowance for estimated residual values. Rates are determined based on the estimated useful lives of the assets as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;4 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Distribution system&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Office furniture, fixtures and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Shorter of 5 years or lease term&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lab equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Assets under construction are recorded as additions to property, plant and equipment upon completion of the projects. Depreciation commences in the&#160;month the asset is placed in service. Additions to construction in progress are comprised of the cost of the contracted services, direct labor and materials.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Interest costs directly attributable to the acquisition and construction of qualifying assets, which are assets that necessarily take a substantial amount of time to be ready for their intended use, are added to the cost of those assets until such time as the assets are substantially ready for use. No interest was capitalized during the years ended December 31, 2021 or 2020.&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Group_ltchrnANDE2RGvbOD_6ehw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;4 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Distribution system&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 40 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Office furniture, fixtures and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;3 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Shorter of 5 years or lease term&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lab equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:41.58%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;5 to 10 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_mPCZyqRXKESTHEJKQCVz5w"
      id="Narr_hswam_S5zkGy6yCkkInONQ">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA"
      id="Narr_RVivlKCJXEabYE5QT8FPkw">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_i92QTmrbHUqKBE4qYPwHUA"
      id="Narr_qykfpn0mfUqNjJ48dP1Iaw">P4Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_iogff4S0CkCSVSIW9dOHTg"
      id="Narr_SQRbrI6TWUqUedos38AcZw">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_jTY0y4r--EiEXAMHb_nZmQ"
      id="Narr_FQ9M4AvGAUCDfxKxgpYMxA">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_nYfiDmZ6Rk2oUCZAEVttNA"
      id="Narr_Xf8U2pxDhEWEL6T4rWbwwA">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_mSY5_CCAL0e-_eMIRkbUVA"
      id="Narr_ncdsSXBBhUqo7r9ha0bw7w">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_K3Ihq-TdDE-ZGSnge38sEg"
      id="Narr_NrPI9TsRJUmCRq4tUZrgfQ">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_GMVJ3-rPmkeyPiPWP9NqWw"
      id="Narr_I2bBWKjuzUiWRAQMJeU_BQ">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_d9ohEbz4BkOGpyBII32Zkg"
      id="Narr_5GznRZmGV0630Aj8UqciSA">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_ErvLwk13nkiO2-V7OOxtFw"
      id="Tc_B1bOL3rP7EamsuiSUoW3aw_6_2">Shorter of 5 years or lease term</us-gaap:PropertyPlantAndEquipmentEstimatedUsefulLives>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_Ss0z-whZYUSJvevcASK4_w"
      id="Narr_PxspDoacX0-OMxXUJZ5QnA">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_eczvaTabWUGDHmHOXgGznw"
      id="Narr_QTdw-i-Fz06OjDglIU_DaQ">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:InterestCostsCapitalized
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_TeR3jkD-aEehKXT6g-mc_Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:InterestCostsCapitalized>
    <us-gaap:InterestCostsCapitalized
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_wNMeU8LXDUiUB4lGruAlaQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:InterestCostsCapitalized>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_YqtXPSAOpUKdoFcFvluFPw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Long-lived assets:&lt;/b&gt; Long-lived assets are reviewed for impairment whenever events or changes in circumstances indicate that the carrying amount of the assets might not be recoverable. Conditions that would necessitate an impairment assessment include a significant decline in the observable market value of an asset, a significant change in the extent or manner in which an asset is used, or a significant adverse change that would indicate that the carrying amount of an asset or group of assets is not recoverable. For long-lived assets to be held and used, the Company recognizes an impairment loss only if their carrying amounts are not recoverable through their undiscounted cash flows and measures the impairment loss based on the difference between the carrying amounts and estimated fair values.&lt;/p&gt;</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_jaGQNAtYUU2laFwcEQ_WeQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Goodwill and intangible assets:&lt;/b&gt; Goodwill represents the excess cost of an acquired business over the fair value of the individual assets and liabilities of an acquired business. Goodwill and intangible assets acquired in a business combination accounted for as a purchase and determined to have an indefinite useful life are not amortized but are tested for impairment annually or upon the identification of a triggering event. Intangible assets with estimable useful lives are amortized over their respective estimated useful lives to their estimated residual values and reviewed periodically for impairment. The Company evaluates the possible impairment of goodwill annually as part of its reporting process for the fourth quarter of each fiscal&#160;year. Management identifies the Company&#x2019;s reporting units, which consist of &#160;retail, bulk, services, and manufacturing, and determines the carrying value of each reporting unit by assigning the assets and liabilities, including the existing goodwill and intangible assets, to those reporting units. The Company determines the fair value of each reporting unit and compares the fair value to the carrying amount of the reporting unit. To the extent the carrying amount of the reporting unit exceeds the fair value of the reporting unit, an impairment loss is recorded.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;For the&#160;years ended December&#160;31, 2021 and 2020, the Company estimated the fair value of its reporting units by applying the discounted cash flow method, which relied upon seven-year discrete projections of operating results, working capital and capital expenditures, along with a terminal value subsequent to the discrete period. These seven-year projections were based upon historical and anticipated future results, general economic and market conditions, and considered the impact of planned business and operational strategies. The discount rates for the calculations represented the estimated cost of capital for market participants at the time of each analysis.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company also estimated the fair value of each of it reporting units for the years ended December 31, 2021 and 2020 by applying the guideline public company method.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company weighted the fair values estimated for each of its reporting units under each method and summed such weighted fair values to estimate the overall fair value for each reporting unit. The respective weightings the Company &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;applied to each method for the years ended December&#160;31, 2021 and 2020 were 80% to the discounted cash flow method and 20% to the guideline public company method.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-style:italic;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The fair values the Company estimated for its retail, bulk, services and manufacturing reporting units exceeded their carrying amounts by 32%, 51%, 15%, and 15% respectively, as of December 31, 2021. The fair values the Company estimated for its retail, bulk, and services reporting units exceeded their carrying amounts by 101%, 49% and 17%, respectively, as of December 31, 2020. While the fair value the Company estimated for its manufacturing reporting unit exceeded its carrying value by 31% as of December 31, 2020, due to new information the Company obtained in 2021, the Company was required to record an impairment loss for its manufacturing reporting unit&#x2019;s goodwill in 2021, as discussed in paragraphs that follow.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;Approximately 80% of Aerex&#x2019;s revenue, and 89% of Aerex&#x2019;s gross profit, for the year ended December 31,&#160;2020 were generated from sales to one customer. While Aerex sells various products to this customer, Aerex&#x2019;s revenue from this customer has historically been derived primarily from one specialized product. In October 2020, this customer informed Aerex that, for inventory management purposes, it was suspending its purchases of the specialized product from Aerex following 2020 for a period of approximately one year. This customer informed Aerex at that time that it expected to recommence its purchases of the specialized product from Aerex beginning with the first quarter of 2022. As a result of this anticipated loss of revenue for Aerex, the Company updated its projections for its manufacturing reporting unit&#x2019;s future cash flows. Such projections assumed, in part, that Aerex&#x2019;s major customer would recommence its purchases from Aerex in 2022 but at a reduced aggregate amount, as compared to 2020. Based upon these updated projections, the Company tested its manufacturing reporting unit&#x2019;s goodwill for possible impairment as of December 31, 2020 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. As a result of these impairment tests, the Company determined that the estimated fair value of its manufacturing reporting unit exceeded its carrying value by approximately 31% as of December 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;In late July 2021, this former major customer communicated to Aerex that it expected to recommence its purchases of the specialized product from Aerex in 2022 and subsequent years, but informed Aerex that such purchases would be at substantially reduced annual amounts, as compared to the amounts it had purchased from Aerex in 2020 and prior years. The Company&#x2019;s updated sales estimate for this customer based on this new information was substantially below the sales the Company anticipated to this customer for 2022 and subsequent years that the Company used in the discounted cash flow projections the Company prepared for purposes of testing its manufacturing reporting unit&#x2019;s goodwill for possible impairment as of December 31, 2020. Aerex&#x2019;s efforts to replace the revenue previously generated from this customer with revenue from existing and new customers have been adversely impacted by continuing negative economic conditions, which have increased Aerex&#x2019;s raw material costs, resulted in raw material shortages and extended delivery times for such materials and, the Company believes, also adversely affected the overall financial condition of Aerex&#x2019;s current and prospective customer base. Accordingly, in light of this new information from Aerex&#x2019;s former major customer, and present weak economic conditions that the Company believes will continue into 2022, the Company updated its projections of future cash flows for the manufacturing reporting unit and tested its goodwill for possible impairment as of June 30, 2021 using the discounted cash flow and guideline public company methods, with a weighting of 80% and 20% applied to these two methods, respectively. Based upon this testing, the Company determined that the carrying value of its manufacturing reporting unit exceeded its fair value by $2.9 million, and the Company recorded an impairment loss to reduce its manufacturing reporting unit&#x2019;s goodwill by this amount for the three months ended June 30, 2021.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#x2019;s manufacturing reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that Aerex&#x2019;s discounted future cash inflows will be less than its present expectation, the Company may be required to record additional impairment losses to reduce the remaining carrying values as of December 31, 2021 of its manufacturing reporting unit&#x2019;s goodwill of $1,985,211 and its remaining unamortized intangible assets balances of $847,778 recorded as a result of the acquisition of Aerex. Any such impairment losses could have a material adverse impact on the Company&#x2019;s consolidated results of operations.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Based upon its most recent estimation prepared as of December 31, 2021, the fair value of the Company&#x2019;s services reporting unit exceeded its carrying value by only 15%. If the Company determines in the future that PERC&#x2019;s discounted future cash inflows will be less than its present expectation, the Company may be required to record impairment losses to reduce the carrying values as of December 31, 2021 of its services reporting unit&#x2019;s goodwill of $5,320,416 and its &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;remaining unamortized intangible assets balances of $2,553,888 recorded as a result of the acquisition of PERC. Any such impairment losses could have a material adverse impact on the Company&#x2019;s consolidated results of operations.&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_yvJMcp0hA0qqmEZprPv3dw"
      decimals="2"
      id="Narr_cE-KZV6CLEmsI3CAZuTx3Q"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.80</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_D1lthUdJE0ycaWtJ1ICfmw"
      decimals="2"
      id="Narr_08RbqM7plUiitTQKKevLSA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.20</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Narr_VbMrtFWII0GQVVTz5_0fKQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">32</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Narr_F1pHXOzejE6hYAOkw6MZSg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">51</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Narr_i8EB5XO9C0WvsCsMEKHxWQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">15</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Narr_gxY1lNcMhUKV-e1BnbH6Ng"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">15</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Narr_Bz0X7WbjZUqwn1U-AY4i-g"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">101</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Narr_qiMg53y2OEqq-1WIWmloHA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">49</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Narr_WcAcjFejOUioAjMuNPBu_w"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">17</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Narr_T9c7QQ6bbECMsxPvR9sXkg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">31</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_Gkceb99m70Oqnxt1VxUgeQ"
      decimals="2"
      id="Narr_kS2HbJ2g7ECE_3Qqngz4pA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.80</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_GrossProfitMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember_kuRK6cbUnkOldkSTsMCAJA"
      decimals="2"
      id="Narr_N_Wgh4J0IkiyaCGFEVEZ9Q"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.89</us-gaap:ConcentrationRiskPercentage1>
    <cwco:NumberOfCustomers
      contextRef="As_Of_12_31_2020_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember__u3VSfhz50eP9mBQI9RtAg"
      decimals="0"
      id="Narr_KRXoJiwe90a_vzbWobotAA"
      unitRef="Unit_Standard_customer_eNCDyeI8C0-i-NfyoLXf-A">1</cwco:NumberOfCustomers>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_3FbK4qa0gke44tgFa-BN6g"
      decimals="2"
      id="Narr_BZ04mxiSAUCY_DOz1k6Ogg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.80</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_1_1_2020_To_12_31_2020_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_W-NwYGTack6NuMLbCHpXdg"
      decimals="2"
      id="Narr_Dv4PBG51cUaAKR6WZvELmw"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.20</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Narr_flNc029GBU22Huob_tWcGA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">31</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_DiscountedCashFlowMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_d0Dsq74pMUqS5aSJqpup_Q"
      decimals="2"
      id="Narr_j70BqCSGAkS7mspn5F882Q"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.80</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <cwco:EstimatedFairValuePercentageSegmentReportingInformation
      contextRef="Duration_6_1_2021_To_6_30_2021_cwco_FairValueDeterminingMethodAxis_cwco_GuidelinePublicCompanyMethodMember_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_sLkepPeG70KqKTgr9Pcu4w"
      decimals="2"
      id="Narr_K_Af_Mgmv0KngJbVYuqtuA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.20</cwco:EstimatedFairValuePercentageSegmentReportingInformation>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="Duration_6_1_2021_To_6_30_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_oszWfLjlvEq5bax8GUqm3Q"
      decimals="-5"
      id="Narr_QwTf7k9lb0ubpkklT9mMzg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2900000</us-gaap:GoodwillImpairmentLoss>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_5yj8uCvmxEisBUbULN8DCQ"
      decimals="0"
      id="Narr_tHIaDisIa0agK9Gj6SmWWw"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">15</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ"
      decimals="0"
      id="Narr_bmIYB3Ygtke6yzsnysvN0Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1985211</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_AerexIndustriesIncMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_lISSrzk5_Ea6k1B1JBnCAQ"
      decimals="0"
      id="Narr_ykDdRywQ8kmJV0EiKI_I1g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">847778</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <cwco:EstimatedFairValueCarryingAmountExceededPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_YxR91NTNuUm49PPfDJS35g"
      decimals="0"
      id="Narr_G89G4oeRN0C_kvz_S3H7WA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">15</cwco:EstimatedFairValueCarryingAmountExceededPercentage>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg"
      decimals="0"
      id="Narr_MhcxvvyFkUKGNioUEkblug"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5320416</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_VmU62c8be0udt9esJiiFNg"
      decimals="0"
      id="Narr_xyHZuFs-v0akAQUa2p0ggA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2553888</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:InvestmentPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_n5qVLzS4zUaietF0thSOzA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Investments:&lt;/b&gt; Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost. The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation. The Company recognizes impairment losses on declines in the fair value of the stock of investees that are other than temporary.&lt;/p&gt;</us-gaap:InvestmentPolicyTextBlock>
    <cwco:CriteriaForRecognizingInvestmentAtCost
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_R8bXjGby0EyEs7xAI57slg">Investments where the Company does not exercise significant influence over the operating and financial policies of the investee and holds less than 20% of the voting stock are recorded at cost.</cwco:CriteriaForRecognizingInvestmentAtCost>
    <us-gaap:EquityMethodInvestmentAdditionalInformation
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_g72VdUqASEOlrMw93b4ySw">The Company uses the equity method of accounting for investments in common stock where the Company holds 20% to 50% of the voting stock of the investee and has significant influence over its operating and financial policies but does not meet the criteria for consolidation.</us-gaap:EquityMethodInvestmentAdditionalInformation>
    <cwco:OtherAssetsPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_ieS7z5q020CyizikuKwkxw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Other assets:&lt;/b&gt; Under the terms of CW-Bahamas&#x2019; contract with the Water and Sewerage Corporation of The Bahamas (&#x201c;WSC&#x201d;) to supply water from its Blue Hills desalination plant, CW-Bahamas was required to reduce the amount of water lost by the public water distribution system on New Providence Island, The Bahamas, over a one-year period by 438 million gallons, a requirement CW-Bahamas met during 2007. The Company was solely responsible for the engineering, labor and materials costs incurred to reduce the amount of lost water, which were capitalized and are being amortized on a straight-line basis over the original remaining life of the Blue Hills contract. Such costs are included in other assets and aggregated approximately $3.5 million as of December&#160;31, 2021 and 2020. Accumulated amortization for these costs was approximately $2.7 million and $2.5 million as of December&#160;31, 2021 and 2020, respectively. Amortization expense for these costs was $179,353 for the&#160;years ended December&#160;31, 2021 and 2020.&lt;/p&gt;</cwco:OtherAssetsPolicyTextBlock>
    <cwco:AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="-6"
      id="Narr_AFZ0IEn-7EyUKhSroZPUFA"
      unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">438000000</cwco:AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem>
    <us-gaap:OtherAssets
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_RIhkjGOXukmM43EDG9ye3w"
      decimals="-5"
      id="Narr_JJk_iq120USF4k_rwUnTYQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3500000</us-gaap:OtherAssets>
    <us-gaap:OtherAssets
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_CapitalizedEngineeringLaborAndMaterialsCostMember_4nkKVq63Ok2x-GMwgdgt-g"
      decimals="-5"
      id="Narr_VxVwTcRmRkGIIk0x5gf4GA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3500000</us-gaap:OtherAssets>
    <us-gaap:AccumulatedAmortizationOfOtherDeferredCosts
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="-5"
      id="Narr_QZQUPuCuKECA-JuCHKgxVg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2700000</us-gaap:AccumulatedAmortizationOfOtherDeferredCosts>
    <us-gaap:AccumulatedAmortizationOfOtherDeferredCosts
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="-5"
      id="Narr_hw4sP1aXb0-szbAGASayBA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</us-gaap:AccumulatedAmortizationOfOtherDeferredCosts>
    <us-gaap:OtherAmortizationOfDeferredCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_vUO_VklzAE6hY7q0FzkQ5g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">179353</us-gaap:OtherAmortizationOfDeferredCharges>
    <us-gaap:OtherAmortizationOfDeferredCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_XptJfzSiUU-Mpy9kQoLdiQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">179353</us-gaap:OtherAmortizationOfDeferredCharges>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_iWKQHHhbjkmXGV-F4iySlQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Income taxes:&lt;/b&gt; The Company accounts for the income taxes arising from the operations of its United States subsidiaries under the asset and liability method. Deferred tax assets and liabilities, if any, are recognized for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the&#160;years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in income in the period that includes the enactment date. A valuation allowance is provided to the extent any deferred tax asset may not be realized.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company is not presently subject to income taxes in the other countries in which it operates.&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_ra6zbFaEVE--4iFRMWVpbg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue recognition:&lt;/b&gt; Revenue is recognized when control of the promised goods or services is transferred to the Company&#x2019;s customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those goods or services.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the Company&#x2019;s revenue disaggregated by revenue source.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Retail revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,104,953&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,952,370&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Bulk revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,800,869&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,312,546&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Services revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,884,857&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,937,859&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Manufacturing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,072,823&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,425,351&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Retail revenue&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company produces and supplies water to end-users, including residential, commercial and governmental customers in the Cayman Islands under an exclusive retail license issued to Cayman Water by the Cayman Islands government to provide water in two of the three most populated areas on Grand Cayman Island. Customers are billed on a&#160;monthly basis based on metered consumption and bills are typically collected within 30 to &lt;span style="-sec-ix-hidden:Hidden_diVp5qBtB0KjZqeIyo-3cQ;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;45&#160;days&lt;/span&gt;&lt;/span&gt; after the billing date. Receivables not collected within 45&#160;days subject the customer to disconnection from water service. In 2021 and 2020, bad debts represented less than 1% of the Company&#x2019;s total retail sales.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company recognizes revenue from water sales at the time water is supplied to the customer&#x2019;s premises. The amount of water supplied is determined and invoiced based upon water meter readings performed at the end of each&#160;month. All retail water contracts are&#160;month-to-month contracts. The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its retail water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-style:italic;"&gt;Bulk revenue&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company produces and supplies water to government-owned distributors in the Cayman Islands and The Bahamas.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;OC-Cayman provides bulk water to the Water Authority-Cayman (&#x201c;WAC&#x201d;), a government-owned utility and regulatory agency, under two agreements. The WAC in turn distributes such water to properties in Grand Cayman outside of Cayman Water&#x2019;s retail license area.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company sells bulk water in The Bahamas through its majority-owned subsidiary, CW-Bahamas, under two agreements with the Water and Sewerage Corporation of The Bahamas (&#x201c;WSC&#x201d;), which distributes such water through its own pipeline system to residential, commercial and tourist properties on the Island of New Providence. CW-Bahamas also sold water to a private resort on Bimini through December 18, 2020, which generated revenue of approximately $127,000 for the year ended December 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its bulk water sale contracts and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Services and Manufacturing revenue&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company provides design, engineering, management, procurement and construction services for desalination infrastructure through DesalCo, which serves customers in the Cayman Islands, The Bahamas and the British Virgin Islands.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company also designs, builds, sells, operates and manages water, wastewater and water reuse infrastructure through PERC. All of PERC's customers are companies or governmental entities located in the U.S.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company, through Aerex, is a custom and specialty manufacturer of water treatment-related systems and products applicable to commercial, municipal and industrial water production. Substantially all of Aerex&#x2019;s customers are U.S. companies.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company generates construction and services revenue from DesalCo and PERC, and generates manufacturing revenue from Aerex.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company recognizes &lt;span style="background:#ffffff;"&gt;revenue for its construction and its specialized/custom manufacturing contracts&#160;&lt;/span&gt;over time under the input method using costs incurred (which represents work performed) to date relative to total estimated costs at completion to measure progress toward satisfying its performance obligations as such measure best reflects the transfer of control of the promised good to the customer. Contract costs include labor, materials and amounts payable to subcontractors. The Company follows this method since it can make reasonably dependable estimates of the revenue and costs applicable to the various stages of a contract. Under this input method, the Company records revenue and recognizes profit or loss as work on the contract progresses. The Company estimates total project costs and profit to be earned on each long-term, fixed price contract prior to commencement of work on the contract and updates these estimates as work on the contract progresses. The cumulative amount of revenue recorded on a contract at a specified point in time is that&#160;percentage of total estimated revenue that incurred costs to date comprises of estimated total contract costs. If, as work progresses, the actual contract costs exceed estimates, the profit recognized on revenue from that contract decreases. The Company recognizes the full amount of any estimated loss on a contract at the time the estimates indicate such a loss. Any contract assets are classified as current assets. Contract liabilities on uncompleted contracts, if any, are classified as current liabilities.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has elected the &#x201c;right to invoice&#x201d; practical expedient for revenue recognition on its services agreements and recognizes revenue in the amount to which the Company has a right to invoice.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;Practical Expedients and Exemptions&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company does not disclose the value of unsatisfied performance obligations for (i)&#160;contracts with an original expected length of one&#160;year or less and (ii)&#160;contracts for which the Company recognizes revenue at the amount to which it has the right to invoice for services performed.&lt;/p&gt;</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_dJWOrIdVVkKum-WfYM9cVg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the Company&#x2019;s revenue disaggregated by revenue source.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:36.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:16.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Retail revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,104,953&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,952,370&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Bulk revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,800,869&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,312,546&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Services revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,884,857&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,937,859&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Manufacturing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,072,823&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,425,351&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:61.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total revenue&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.22%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.21%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_-dFfc8peQEeI3VtY_ZHmpw"
      decimals="0"
      id="Tc_FSWn8DjwBkqvCuC5QcWvXA_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22104953</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_RetailRevenuesMember_46W_Lce_VUm9C3NSSmIrPg"
      decimals="0"
      id="Tc_whAh4J706kuMkxQKqzLLKg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22952370</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_CSlU1cPtB0WiopIwPeGA1g"
      decimals="0"
      id="Tc_MDLUcQ4UDUK7TW_TP4gsEg_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26800869</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkRevenuesMember_XL907EX-IEuZ5up-6fmYiw"
      decimals="0"
      id="Tc_ZPOoOOi2dUSenEtN2ehwkA_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24312546</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_0MeXq5vZnUCfNimySpnMeQ"
      decimals="0"
      id="Tc_6fXX-diiN0OgHRkDF6i9fQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13884857</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesRevenuesMember_1aYYTFSqoECTbPyDh9BwmA"
      decimals="0"
      id="Tc_BaFtc7Zn0Euz_3EGtjlI2Q_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12937859</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_891yP2BhlE-Tgn7a4CTS-Q"
      decimals="0"
      id="Tc_7bdgxm75cEqjJO26rNe1Tg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4072823</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingRevenuesMember_uzBPARo2t0Gt7yD1NWEUEg"
      decimals="0"
      id="Tc_E4r9dpH480ek12L9Unzb_w_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12425351</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_z5N1l3yd_0OT2_po-tsVWQ_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">66863502</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_HFzD1Y7wokGhTMfb5JVvxw_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">72628126</us-gaap:Revenues>
    <cwco:NumberOfDaysAfterConsumptionBillingsAreCollected
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MinimumMember_5NxsqHLIJUOxKC6a-SXLDQ"
      id="Narr_PRiTpbTw4U6dNNUenhxlsw">P30D</cwco:NumberOfDaysAfterConsumptionBillingsAreCollected>
    <cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_GxA_UveSBEaVLBqC6L_W4g">P45D</cwco:NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue>
    <cwco:PercentageOfBadDebts
      contextRef="Duration_1_1_2019_To_12_31_2019_srt_RangeAxis_srt_MaximumMember_VoBNP3iM4k2BNaN6Qz9urw"
      decimals="2"
      id="Narr_ADcMVvBXmkOHnE9EuvZnNw"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.01</cwco:PercentageOfBadDebts>
    <cwco:PercentageOfBadDebts
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_iFjut3yj2USWDhBKw1EUtQ"
      decimals="2"
      id="Narr_iY0IDFPkvUyfRy1BMXRYBg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.01</cwco:PercentageOfBadDebts>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_ConsolidatedEntitiesAxis_cwco_ConsolidatedWaterBahamasMember_srt_StatementGeographicalAxis_country_BS_TjELs3qLxkKtQNWWCjLUbA"
      decimals="0"
      id="Narr_xJ_avWODnkCR5itlNFOA_A"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">127000</us-gaap:Revenues>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_LPjVmvrT4EutKZ0sx-CGAg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Comparative amounts:&lt;/b&gt; Certain amounts presented in the financial statements previously issued for 2020 have been reclassified to conform to the current&#160;year&#x2019;s presentation.&lt;/p&gt;</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:CashAndCashEquivalentsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_7E8rdkcQpUK-dtlGwCa6ag">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;3. Cash and cash equivalents&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Cash and cash equivalents are not restricted by the terms of the Company&#x2019;s bank accounts as to withdrawal or use. As of December&#160;31, 2021 and 2020, the equivalent United States dollars of the Company&#x2019;s cash and cash equivalents, including those accounts denominated in currencies other than the U.S. dollar, are as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bank accounts:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;United States dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,888,445&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,001,264&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Cayman Islands dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,784,358&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,650,874&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bahamian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,944,208&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,863,287&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bermudian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,832&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,832&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 32,619,843&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 34,518,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Short term deposits:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;United States dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,324,258&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,796,582&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Cayman Islands dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,413,958&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,413,547&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bahamian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,065,764&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,738,216&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,275,893&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 40,358,059&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,794,150&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;background:#00ff00;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Transfers from the Company&#x2019;s Bahamas bank accounts to Company bank accounts in other countries require the approval of the Central Bank of the Bahamas.&lt;/p&gt;</us-gaap:CashAndCashEquivalentsDisclosureTextBlock>
    <us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_QMKErbCSNUqG2O4kc9N5WA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:41.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:18.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bank accounts:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;United States dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,888,445&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,001,264&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Cayman Islands dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,784,358&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,650,874&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bahamian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,944,208&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,863,287&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bermudian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,832&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,832&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 32,619,843&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 34,518,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Short term deposits:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;United States dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,324,258&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,796,582&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Cayman Islands dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,413,958&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,413,547&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Bahamian dollar&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,065,764&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,738,216&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,275,893&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:54.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 40,358,059&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:16.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,794,150&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw"
      decimals="0"
      id="Tc_akeE22X4GEKDWMBTL_bpyg_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">15888445</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw"
      decimals="0"
      id="Tc_XpOAdgaaXUGbJf7mATS_kA_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">14001264</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA"
      decimals="0"
      id="Tc_2t2j8yE-3Ea-u_M3XhCrxw_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12784358</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw"
      decimals="0"
      id="Tc_iXsu8q5B1kK856m1Vw7Jyg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5650874</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ"
      decimals="0"
      id="Tc_arawSLXSbkCLHq507bPPlA_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3944208</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA"
      decimals="0"
      id="Tc_DcrzPAPxLEOTA2ZyXOAV2w_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">14863287</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BMD_yI9Ptl_N-UCFrFY35QHWCw"
      decimals="0"
      id="Tc_Md9Hpho1KkSnz3zUIJYrAg_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2832</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BMD_YbOYPvhNE02T-1w0bLtgBQ"
      decimals="0"
      id="Tc_GylSRAfer02_pN2CiZSXOg_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2832</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_2EYMpMOUD0eGrvubvhTlmQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">32619843</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_EaNUpaSdt0y06SffVgKtBg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">34518257</us-gaap:Cash>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_USD_D6bRTki2jEmpQcjX8m0sRw"
      decimals="0"
      id="Tc_B7Fyz9AM2U6YTzm_L96-nQ_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5324258</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_USD_t7ND0ORwXEKjMD5CYVAzZw"
      decimals="0"
      id="Tc_kfcZVt-bv0mPI7PLCIWgFQ_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5796582</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_KYD_V3c1MMmWaUO17woZC098TA"
      decimals="0"
      id="Tc_Kbmqf97JtEuMZLqXuNbIJw_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2413958</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_KYD_QQTUdj2ESEWKm6W9-hDGXw"
      decimals="0"
      id="Tc_8w-EW2NBnkG0oStlVe06tw_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2413547</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_srt_CurrencyAxis_currency_BSD_t77UkbF3pE-grZX2MbD6QQ"
      decimals="0"
      id="Tc_530w_vHRnEmxGkXr2_Uqsg_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_srt_CurrencyAxis_currency_BSD_Q0-u08-RYUukABHJ1ybpQA"
      decimals="0"
      id="Tc_Xinqxl1br0GxVTIUC55t_A_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1065764</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_re_Xmftgkk2uhftn1bxWXw_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7738216</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_-Ilo8GQSIUiZERMus1rd9w_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9275893</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_zBY1xFG7t0aakAjCiLSNsw_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">40358059</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_lzIblq-1m0i4K9TsGGPkSA_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43794150</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_9NWGSHsW5UWC4pFEevqf0g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"&gt;4. Accounts receivable, net&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade accounts receivable&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,409,029&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,422,782&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Receivable from OC-BVI&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 40,877&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 62,171&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other accounts receivable&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 180,262&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 269,133&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,630,168&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,754,086&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (280,861)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (270,110)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,349,307&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,483,976&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The activity for the allowance for doubtful accounts consisted of:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Opening allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 270,110&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 142,236&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Provision for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 129,107&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts written off during the year&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,233)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Recovery of accounts written off &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,751&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Ending allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 280,861&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 270,110&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Significant concentrations of credit risk are disclosed in Note&#160;18.&lt;/p&gt;</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_X_yP70yEiEGmx3yCl7rkCw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade accounts receivable&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,409,029&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,422,782&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Receivable from OC-BVI&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 40,877&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 62,171&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other accounts receivable&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 180,262&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 269,133&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,630,168&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,754,086&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (280,861)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (270,110)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,349,307&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,483,976&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <cwco:AccountsReceivableTradeCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_TXEa-GWTJUK1tt04EYBOHQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27409029</cwco:AccountsReceivableTradeCurrent>
    <cwco:AccountsReceivableTradeCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_HF5uGvIvq06-yxOrhq6jbA_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21422782</cwco:AccountsReceivableTradeCurrent>
    <us-gaap:DueFromAffiliateCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_R3xHF-h2lUGzaP6MEplBIA_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">40877</us-gaap:DueFromAffiliateCurrent>
    <us-gaap:DueFromAffiliateCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_aaP26iwW3U2njJlZp6IvJA_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">62171</us-gaap:DueFromAffiliateCurrent>
    <cwco:AccountsReceivableOtherCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ux7-fS8fukiLcwskRRWVqQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">180262</cwco:AccountsReceivableOtherCurrent>
    <cwco:AccountsReceivableOtherCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_8oksNXbrE0-h0irTRSqMdg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">269133</cwco:AccountsReceivableOtherCurrent>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_WA5JmAJ1a02D8AB9rdyXSQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27630168</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AccountsReceivableGrossCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_6QrWU0kh1EauqpzCNBxv1g_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21754086</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_oojjNlRFZEecvchzktFU6A_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">280861</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_TSVMEXiGxEmLuUtg2mjYbg_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">270110</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_vCXRi6tL5UKhjb4-xo0OKg_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27349307</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_n_1FHnBheUeQdi9bA3b4Zw_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21483976</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_3oub6AhdH0Ozul8Kjt0ifA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The activity for the allowance for doubtful accounts consisted of:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Opening allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 270,110&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 142,236&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Provision for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 129,107&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts written off during the year&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,233)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Recovery of accounts written off &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,751&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:72.63%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Ending allowance for doubtful accounts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 280,861&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.92%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 270,110&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_NysFNF-QK0m6gPZKCqcD3g_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">270110</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2019_GPOcbVU6aUaYZyocIQ-bPQ"
      decimals="0"
      id="Tc_Xbi1ZbxTPUuj0E2cHASwsg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">142236</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_9n8vaLPiREKzOBLR6B_9QQ_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_a45QZqWxZE6knEoXpibvfw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">129107</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_FSIfb08NyEGcSXMTgu2qbA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_nkiweckGBky9ukKAebd21Q_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1233</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Fm4PBi9vFUOoY4j98akkNg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10751</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_hCFAgrF4DkaslZvVvuCkag_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:AllowanceForDoubtfulAccountsReceivableRecoveries>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_9d0YOp-dPU2bC_OvJQs8Xw_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">280861</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Xywo5jwgzkqn217bm1jISA_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">270110</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_jw2l-h2rXEWIgphgodyiqw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"&gt;5. Inventory&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Water stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 34,587&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,938&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Consumables stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 138,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 105,540&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Spare parts stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,064,708&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,587,542&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total inventory&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,237,842&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,721,020&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,504,832&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,214,178&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory (non-current)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,733,010&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,506,842&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_LB0TuxXdYEeXtWh8ie5KgA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Water stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 34,587&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,938&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Consumables stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 138,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 105,540&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Spare parts stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,064,708&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,587,542&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total inventory&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,237,842&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,721,020&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,504,832&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,214,178&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory (non-current)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,733,010&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,506,842&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_eK27emARAU2mKKBCyPz6aw"
      decimals="0"
      id="Tc_DNJSqSt8HUGvT2FJFNtZ_g_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">34587</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_WaterStockMember_2URf-WJgHUWNUkUB4ndn2A"
      decimals="0"
      id="Tc_8S016xO4PE6cHLQxt6xA0w_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27938</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_EFM7vPcFNEmC4z7b0LGJ6g"
      decimals="0"
      id="Tc_RtdZ3i3oWE-8gI_TkcE5yw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">138547</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_ConsumablesStockMember_mOgZI7LkwkWHR4GtJ0cEUw"
      decimals="0"
      id="Tc_6WeIX86UG0iVq4qKf1QuYw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">105540</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_uELHyMleHUyrT3u21aLCFQ"
      decimals="0"
      id="Tc_a-E9wUWMg0y8U6WfOqQw3Q_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7064708</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2020_us-gaap_StatementClassOfStockAxis_cwco_SparePartsStockMember_Kj4GgNPmcEO0AQNN4roLJw"
      decimals="0"
      id="Tc_BcuF5TC5M0OgGMVkdh1FfA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7587542</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_wd1WQT81o0WdRPgnwtjwgw_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7237842</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_7hy59to85Eu8Psv3QRNM4Q_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7721020</us-gaap:InventoryGross>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_TJSxHTwizEaYZo-c4aWOsg_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2504832</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_nrVd2CHQjUGAvnPApDOKAQ_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3214178</us-gaap:InventoryNet>
    <us-gaap:InventoryNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_TjA0H-D0mUSzrLaaRTVcfA_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4733010</us-gaap:InventoryNoncurrent>
    <us-gaap:InventoryNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_3qsRb-W7DUugqNnnBn6TtQ_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4506842</us-gaap:InventoryNoncurrent>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_KC_OGDxDMEC1scsTeDKQoA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;6. Contracts in progress&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Revenue recognized and amounts billed on contracts in progress are summarized as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Revenue recognized to date on contracts in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,109,396&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 17,534,449&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Amounts billed to date on contracts in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (6,370,855)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (17,791,928)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Retainage&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 237,542&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 312,130&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net contract asset (liability)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (23,917)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54,651&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;The above net balances are reflected in the accompanying consolidated balance sheet as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Contract assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 489,961&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 516,521&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Contract liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (513,878)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (461,870)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net contract asset (liability)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (23,917)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54,651&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;As of &lt;span style="-sec-ix-hidden:Hidden_ANe22B19gUG017w1p2eYRQ;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;December 31, 2021&lt;/span&gt;&lt;/span&gt;, the Company had unsatisfied or partially unsatisfied performance obligations for contracts in progress representing approximately $5.7 million in aggregate transaction price for contracts with an original expected length of greater than one year. The Company expects to earn revenue as it satisfies its performance obligations under those contracts in the amount of approximately $4.8 million during the year ending &lt;span style="-sec-ix-hidden:Hidden_wAgvE9b-oEOCy5TqD4Q-Ww;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;December 31, 2022&lt;/span&gt;&lt;/span&gt; and $0.9 million &lt;span style="-sec-ix-hidden:Hidden_UFQss1Ac5ku0S6GVflhWSQ;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;thereafter&lt;/span&gt;&lt;/span&gt;.&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_KMjs1wh030a-MkiaHZdM7A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Revenue recognized and amounts billed on contracts in progress are summarized as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Revenue recognized to date on contracts in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,109,396&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 17,534,449&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Amounts billed to date on contracts in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (6,370,855)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (17,791,928)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:67.17%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Retainage&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 237,542&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 312,130&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net contract asset (liability)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (23,917)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.86%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54,651&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;The above net balances are reflected in the accompanying consolidated balance sheet as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Contract assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 489,961&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 516,521&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Contract liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (513,878)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (461,870)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net contract asset (liability)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.85%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.99%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (23,917)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.8%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54,651&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_G8NXoLDMv0CqziayCQIYzQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6109396</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_G7ofgyF9jUOk88aRaIUMkQ_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17534449</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <cwco:ContractWithCustomerAmountBilled
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_NsdH5GdA8k2sWoiMC6GciA_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6370855</cwco:ContractWithCustomerAmountBilled>
    <cwco:ContractWithCustomerAmountBilled
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_cg2iO1VIOkWk7YCP-jW8Nw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17791928</cwco:ContractWithCustomerAmountBilled>
    <cwco:ContractWithCustomerRetainage
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_NVbQ3B8dW0uaU_Vy-Dw-LQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">237542</cwco:ContractWithCustomerRetainage>
    <cwco:ContractWithCustomerRetainage
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_MHi12L-owk2sTzt18bqtkw_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">312130</cwco:ContractWithCustomerRetainage>
    <cwco:ContractWithCustomerNetOverbillings
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_2L6is2f08kSR_SUNVuYPoQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-23917</cwco:ContractWithCustomerNetOverbillings>
    <cwco:ContractWithCustomerNetOverbillings
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_zYf2IMd6Ok6RBaAn7JTgQg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">54651</cwco:ContractWithCustomerNetOverbillings>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_BmDrytI1Wk-WR72cIqor_w_3_4"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">489961</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_WnfFUId_FkKMmYLH2f-WRQ_3_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">516521</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Y0UPM8By50K24cdSKr4KDw_4_4"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">513878</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_0-PSbgEBaUiaYj2VZq_SYw_4_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">461870</us-gaap:ContractWithCustomerLiabilityCurrent>
    <cwco:ContractWithCustomerNetOverbillings
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_9X6WrezMz0WRfHxuWrYLoA_5_4"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-23917</cwco:ContractWithCustomerNetOverbillings>
    <cwco:ContractWithCustomerNetOverbillings
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_byxcieisQ0ykePoFNkr1eg_5_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">54651</cwco:ContractWithCustomerNetOverbillings>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2021-12-31_wiYltF-7UEiSSx8yF6RNwA"
      decimals="-5"
      id="Narr_XVRlW_Zx6UeA4Bo5dMaQqA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5700000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2022-12-31_7_RW6y1_g0qXR2U1S51bUA"
      decimals="-5"
      id="Narr_LWJFcI9TFk6pRH1rGdDImQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4800000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="As_Of_12_31_2021_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_cwco_cnst_2023-12-31_fRkhhHI9jkKeEOKBzhQI5g"
      decimals="-5"
      id="Narr_4COpEnXRaEmRDE-CDsuLtQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">900000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_u3MjbZ62jEmGnVlWBgeAjQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"&gt;7. Property, plant and equipment and construction in progress&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Land&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,316,537&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,566,537&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,255,925&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,250,843&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 64,324,377&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 63,734,860&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Distribution system&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 39,780,272&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 39,149,063&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Office furniture, fixtures and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,051,814&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,083,811&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,079,874&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,999,463&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 287,980&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 274,230&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lab equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,456&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,456&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 136,109,235&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 135,071,263&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less accumulated depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 83,162,696&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 77,383,279&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Property, plant and equipment, net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Construction in progress&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,863&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 440,384&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;As of December&#160;31, 2021, the Company had outstanding capital commitments of approximately $2.7 million. The Company maintains insurance for loss or damage to all fixed assets that it deems susceptible to loss. During the&#160;years ended December&#160;31, 2021 and 2020, $644,224 and $1,653,501, respectively, of construction in progress was placed in service. Depreciation expense was $5,995,213 and $6,335,489 for the&#160;years ended December&#160;31, 2021 and 2020, respectively.&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_9ulubz5Js0aExSsgOWQ4LA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Land&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,316,537&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,566,537&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,255,925&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,250,843&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 64,324,377&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 63,734,860&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Distribution system&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 39,780,272&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 39,149,063&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Office furniture, fixtures and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,051,814&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,083,811&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,079,874&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,999,463&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 287,980&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 274,230&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lab equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,456&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,456&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 136,109,235&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 135,071,263&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less accumulated depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 83,162,696&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 77,383,279&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Property, plant and equipment, net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Construction in progress&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,863&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 440,384&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Dg8BDT9XIEqd5W0viRmQJQ"
      decimals="0"
      id="Tc_JkaWic3cU0erNpshbGD8aA_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3316537</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LandMember_Gq8TCot5x0qU8u3_0ne28Q"
      decimals="0"
      id="Tc_K526NXX4lE2QGtTm0X5m0w_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3566537</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_NcZIUjj1GUOB2vhn2iFpZw"
      decimals="0"
      id="Tc_19Y6aBLij0CIDwvSp6yYyw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">23255925</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_d9R7-HnSL0iEA4q5aOjxJQ"
      decimals="0"
      id="Tc_musx4WazjUW3-cP_mqfDKQ_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">23250843</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_CzfqvDl2wUe2LSnoTArTwA"
      decimals="0"
      id="Tc_p3urnJOeEE2xa1lCWzqcTg_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">64324377</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_PlantAndEquipmentMember_ZasKl46S-kCWxEsGwCVNBA"
      decimals="0"
      id="Tc_SVoWCFhIPUC-LSeB1hVvAA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">63734860</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9DHoHSNk8UGLD-3qmQuO-A"
      decimals="0"
      id="Tc_pUOxv9V_nE6mZn6EHBr3Tg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">39780272</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_DistributionSystemsMember_9gvh9nlZREK3E8_Ajv98yw"
      decimals="0"
      id="Tc_dc-bEGAOuEynysFh354hEQ_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">39149063</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_M_HgzXulXkmcIh_xwKYrWw"
      decimals="0"
      id="Tc_W3FX5g4NDkKOChhpRnXQKw_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3051814</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember_IQA4ggKCwUurTE4IwWNvdQ"
      decimals="0"
      id="Tc_WURyhrBcu0OJi9fZN_9ZjA_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3083811</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_DPIDrrm23U6xCvGcJcB6aA"
      decimals="0"
      id="Tc_2kztHDtZ7kSMaVl8wNe0wQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2079874</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_VehiclesMember_fGR-Ohfs1U6INXwfYhxHGw"
      decimals="0"
      id="Tc_SUeky1fMoU-IXA0wX15jYA_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1999463</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_1GGLQ6kthUyV7m1_VGBRpw"
      decimals="0"
      id="Tc_z0mwpHFB2Euxyco1xaVfAQ_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">287980</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdImprovementsMember_yIfYKKMuGUmUB0HIqj1MOg"
      decimals="0"
      id="Tc_rG7fYAIabk2tLtv0pNucYg_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">274230</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_rFv8iP5Y7UqmEXng7mXwnA"
      decimals="0"
      id="Tc_IqWscyplw0eyvfChDJppnA_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12456</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_us-gaap_PropertyPlantAndEquipmentByTypeAxis_cwco_LabEquipmentMember_2RQVTP85qkmCSF5ZuRurtA"
      decimals="0"
      id="Tc_1g-n7ikQBE-ISQNUFJeQng_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12456</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ryJsG4Upb063P6w2yx3fVg_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">136109235</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_lOMSy9r-O02PQVi0afbkMQ_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">135071263</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_d39UxsdQUkK78HaGdGzhnA_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">83162696</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_pefG-UGouEWG-svHRfOTGw_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">77383279</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_hEQXCsPa90mf5mCQuKuWXw_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">52946539</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_xfiCgjUHXUqAAtJPEE8ogA_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">57687984</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:ConstructionInProgressGross
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_fzZXVHAi20K4L9RPQIIp0w_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">710863</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_xMvwJX8bMEqoKzkWHny2xw_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">440384</us-gaap:ConstructionInProgressGross>
    <cwco:CapitalCommitments
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="-5"
      id="Narr_0Ifs7ujJv0OERFEe0zoKyg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2700000</cwco:CapitalCommitments>
    <cwco:ConstructionInProgressPlacedInService
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_34eVkRBsWU2_BAws-bN3bw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">644224</cwco:ConstructionInProgressPlacedInService>
    <cwco:ConstructionInProgressPlacedInService
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr__T7t5WmsIky7Iui8X-IqXA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1653501</cwco:ConstructionInProgressPlacedInService>
    <us-gaap:Depreciation
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_ifxD29sn1EaElNPzYw_Avw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5995213</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_JgKLbCrqxkO33wnC9yNY9w"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6335489</us-gaap:Depreciation>
    <us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_Hb-oqzYZcUmXAuvu5Aw86g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;8. Discontinued operations&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-style:italic;"&gt;Mexico project development&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 10pt 0pt;"&gt;In 2010, the Company began the pursuit, through its Netherlands subsidiary, Consolidated Water Cooperatief, U.A. (&#x201c;CW-Cooperatief&#x201d;), and its Mexico subsidiary, N.S.C. Agua, S.A. de C.V. (&#x201c;NSC&#x201d;), of a project (the &#x201c;Project&#x201d;) that encompassed the construction, operation and minority ownership of a 100 million gallon per day seawater reverse osmosis desalination plant to be located in northern Baja California, Mexico and accompanying pipelines to deliver water to the Mexican potable water system.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Through a series of transactions that began in 2012, NSC purchased 20.1 hectares of land for approximately $21.1 million on which the proposed Project&#x2019;s plant was to be constructed.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&#x200b;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Following an assessment by the State of Baja, California (the &#x201c;State&#x201d;) of the need for such a desalination plant and the passage of enabling legislation in November 2015, the State officially commenced the required public tender for the Project. A consortium (the &#x201c;Consortium&#x201d;) comprised of NSC, Suez Medio Ambiente M&#xe9;xico, S.A. de C.V. (&#x201c;Suez MA&#x201d;), a subsidiary of SUEZ International, S.A.S., and NuWater S.A.P.I. de C.V. (&#x201c;NuWater&#x201d;) submitted its tender for the Project in April 2016 and in June 2016, the State designated the Consortium as the winner of the tender process for the Project.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&#x200b;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;In August 2016, NSC and NuWater incorporated a new company under the name Aguas de Rosarito S.A.P.I. de C.V. (&#x201c;AdR&#x201d;) to pursue completion of the Project and executed a shareholders agreement for AdR agreeing among other things that (i) AdR would purchase the land and other Project assets from NSC on the date that the Project begins commercial operation and (ii) AdR would enter into a Management and Technical Services Agreement with NSC effective on the first day that the Project begins commercial operation. NSC initially owned 99.6% of the equity of AdR. In February 2018, CW-Holdings acquired the remaining 0.4% ownership in AdR from NuWater.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&#x200b;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;On August 22, 2016, the Public Private Partnership Agreement for the Project (the &#x201c;APP Contract&#x201d;) was executed between AdR, the State Water Commission of Baja California (&#x201c;CEA&#x201d;), the Government of Baja California as represented by the Secretary of Planning and Finance and the Public Utilities Commission of Tijuana (&#x201c;CESPT&#x201d;). The APP Contract required AdR to design, construct, finance and operate a seawater reverse osmosis desalination plant (and accompanying aqueduct) with a capacity of up to 100 million gallons per day in two phases: the first with a capacity of 50 million gallons per day &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;and an aqueduct to the Mexican potable water system in Tijuana, Baja California and the second phase with a capacity of 50 million gallons per day. The first phase was to be operational within 36 months of commencing construction and the second phase was to be operational by July 2024. The APP Contract further required AdR to operate and maintain the plant and aqueduct for a period of 37 years starting from the commencement of operation of the first phase. At the end of the operating period, ownership of the plant and aqueduct would have been transferred to CEA. The APP Contract was subsequently amended by the parties in June 2018 to increase the scope of Phase 1 and to allow for changes in the water tariff due to the changes in the exchange rate for the peso, interest rates and construction costs that had and would occur from the date the APP Contract was signed to the date construction commenced.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;On June 29, 2020, AdR received a letter (the &#x201c;Letter&#x201d;) from the Director General of CEA and the Director General of CESPT terminating the APP Contract. The Letter requested that AdR provide an inventory of the assets that currently comprise the &#x201c;Project Works&#x201d; (as defined in the APP Contract) for the purpose of acknowledging and paying the non-recoverable expenses made by AdR in connection with the Project, with such reimbursement to be calculated in accordance with the terms of the APP Contract. The applicable law requires this list of non-recoverable expenses made by AdR in connection with the Project be submitted to CEA and CESPT within 20 business days from the date of receipt of the Letter. AdR initiated an&#160;amparo&#160;claim before a federal district court in Tijuana, Baja California, to challenge the provision of the applicable law requiring submittal of the list of non-recoverable expenses within the&#160;20&#160;business days term, as AdR considered such term to be unreasonably short due to the magnitude of the Project and the scope of supporting documentation required to be provided with respect to the non-recoverable expenses. AdR obtained an initial provisional suspension of the lapsing of such 20-day term from the court, and on August 10, 2020 the court made such suspension definitive until the completion of the amparo trial. As such, the&#160;20-day&#160;term for filing the list of non-recoverable expenses was suspended. Therefore, on August 28, 2020, AdR submitted their list of non-recoverable expenses, including those of NSC, to CEA and CESPT which was comprised of 51,144,525 United States dollars and an additional 137,333,114 Mexican pesos. In February 2021, AdR withdrew this amparo claim, and such withdrawal was accepted by the federal district court in Tijuana. To date, AdR has not received a response from CEA or CESPT to its submission of non-recoverable expenses.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&#x200b;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company believes CW-Cooperatief, as a Netherlands company, has certain rights relating to its investments in NSC and AdR under the &lt;i style="font-style:italic;"&gt;Agreement on Promotion, Encouragement and Reciprocal Protection of Investments between the Kingdom of the Netherlands and the United Mexican States &lt;/i&gt;entered into force as of October 1, 1999 (the &#x201c;Treaty&#x201d;). On April 16, 2021, CW-Cooperatief submitted a letter to the President of Mexico and other Mexican federal government officials alleging that the State&#x2019;s termination of the APP Contract constituted a breach by Mexico of its international obligations under the Treaty, entitling CW-Cooperatief to full reparation, including monetary damages. This letter invites Mexico to seek a resolution of this investment dispute through consultation and negotiation, but states that if the dispute cannot be resolved in this manner, CW-Cooperatief elects to refer the dispute to the International Centre for the Settlement of International Disputes for arbitration, as provided for in the Treaty. On June 29, 2021, the Mexican Ministry of Economy responded to CW-Cooperatief&#x2019;s letter and proposed to hold a consultation meeting. Two such meetings were held on July 9, 2021 and August 2, 2021 on a confidential basis, without a resolution of the Company&#x2019;s investment dispute.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&#x200b;On February 9, 2022, CW-Cooperatief, filed a Request for Arbitration with the International Centre for Settlement of International Disputes requesting that the United Mexican States pay CW-Cooperatief damages in excess of US$51 million plus MXN$137 million (with the exact amount to be quantified in the proceedings), plus fees, costs and pre- and post-award interest.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;CW-Cooperatief intends to pursue vigorously the relief sought in the arbitration, in addition to pursuing all other legal remedies and courses of action available under the operative contracts and applicable law with respect to their rights, damages, fees and expenses. The Company cannot provide any assurances that CW-Cooperatief will be able to obtain the relief sought in the arbitration, and CW-Cooperatief will incur legal and other arbitration-related expenses that the Company expects will be material to its consolidated results of operations and cash flows.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company cannot provide any assurances that it will be able to obtain reimbursement for any expenses or investments made with respect to the Project.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&#x200b;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;As a result of the cancellation of the APP Contract, in 2020 the Company discontinued all development activities associated with the Project and commenced active marketing efforts to sell the land NSC purchased for the Project. Accordingly, the assets and liabilities of CW-Cooperatief, NSC and AdR, as well as all Project development expenses, the impairment loss of approximately ($3.0 million) recorded during 2020 for Project assets, and the costs for legal and administrative activities to pursue reimbursement from the State of Baja California following the cancellation of the APP Contract, have been reclassified from the services segment to discontinued operations in the accompanying consolidated financial statements. The Company&#x2019;s net losses from discontinued operations for the years ended December 31, 2021 and 2020 were ($2,574,079) and ($4,902,243), respectively. The Company&#x2019;s net loss from discontinued operations for 2021 and 2020 also includes provisions of $963,540 and $316,217, respectively, for potentially uncollectible value added taxes paid that are reimbursable/receivable from the Mexican federal government. The Company recorded the 2021 provision as a result of the Mexican government&#x2019;s rejection of its most recent request for repayment of these value added taxes paid. The Company believes it is legally entitled to be repaid for these value added taxes and has engaged a firm to assist it in collecting these amounts from the Mexican government. However, the Company ultimately may not be able to obtain such payment from the Mexican government and therefore may be required in the future to record another provision to write off the remaining balance of these receivables, which amounted to $340,910 as of December 31, 2021.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;Summarized financial information for the discontinued Mexico project development operation is as follows:&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Cash&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 750,048&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 154,130&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Prepaid expenses and other current assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 82,783&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 88,978&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-size:10pt;"&gt;Value added taxes receivable &lt;/span&gt;(net of allowance of $1,279,757 and $316,217, respectively)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 340,910&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,267,991&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5,682&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Land&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,126,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,126,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Other assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 19,288&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 33,909&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Total assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,319,927&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,677,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Total liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 190,141&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 190,933&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Income from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2,574,079&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,902,243&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Depreciation expense&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,545&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="text-decoration-line:underline;text-decoration-style:solid;"&gt;Project Litigation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Immediately following CW-Cooperatief&#x2019;s acquisition of its initial 50% ownership in NSC, the remaining 50% ownership interest in NSC was held by an unrelated company, Norte Sur Agua, S. de R.L. de C.V. (&#x201c;NSA&#x201d;). NSA subsequently transferred ownership of half of its shares in NSC to EWG Water LLC (&#x201c;EWG&#x201d;) and the other half of its shares in NSC to an individual (the &#x201c;individual shareholder&#x201d;). In February&#160;2012, CW-Cooperatief paid $300,000 to enter into an agreement (the &#x201c;Option Agreement&#x201d;) that provided&#160;it with an option, exercisable through February&#160;7, 2014, to purchase the shares of NSC owned by the individual shareholder for a price of $1.0 million along with an immediate usufruct and power of attorney to vote those shares. Such shares constituted 25% of the ownership of NSC as of February&#160;2012. In May&#160;2013, NSC repaid a $5.7 million loan payable to CW-Cooperatief by issuing additional shares of its stock. As a result of this share issuance to CW-Cooperatief, the Company indirectly acquired 99.99% of the ownership of NSC. The Option Agreement contained an anti-dilution provision that required CW-Cooperatief to transfer or otherwise cause the individual shareholder to acquire, for a total price of $1 (regardless of their par or market value), shares in NSC of an amount sufficient to maintain the individual shareholder&#x2019;s 25% ownership interest in NSC if (i)&#160;any new shares of NSC were issued subsequent to the execution of the Option Agreement (causing the individual shareholder&#x2019;s 25% ownership interest in NSC to be decreased); and (ii)&#160;CW-Cooperatief did not exercise its share purchase option by February&#160;7, 2014. CW-&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Cooperatief exercised its option and paid the $1.0 million to the individual shareholder to purchase the Option Agreement shares in February&#160;2014.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;In January&#160;2018, EWG initiated an ordinary mercantile claim against the individual shareholder, NSC and CW-Cooperatief, (with AdR being named as a third party to be called to trial) before the Tenth Civil Judge in Tijuana, Baja California for Mercantile Matters (the &#x201c;Tenth Civil Judge&#x201d;). In the ordinary mercantile claim, EWG challenged, among other things, the transactions contemplated under the Option Agreement, and therefore, the capital investment transactions that increased the ownership interest of CW-Cooperatief in NSC to 99.99% as a consequence of the Option Agreement. EWG requested that the court, as a preliminary matter (a)&#160;suspend the effectiveness of the challenged transactions; (b)&#160;order certain public officials in Mexico to record the pendency of the lawsuit in the public records (including a special request to register a lien over the real estate owned by NSC); (c)&#160;appoint an inspector for NSC to oversee its commercial activities; and (d)&#160;order public officials in Mexico and credit institutions abroad to refrain from authorizing or executing any legal act related with the activities of the plaintiff, the co-defendants and the third party called to trial to avoid damages to third parties, including those with whom negotiations or any form of commercial or administrative activities, or activities of any other nature related with the &#x201c;Rosarito&#x201d; water desalination project, are being conducted. The Tenth Civil Judge granted, ex-parte, the preliminary relief sought by EWG, which resulted in the issuance of official writs to several governmental and public entities involved with the &#x201c;Rosarito&#x201d; water desalination project, including the registration of the pendency of the lawsuit in certain public records.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;On October&#160;16, 2018, NSC was served with the ordinary mercantile claim. On November&#160;7, 2018, NSC filed a legal response to the claim, vigorously opposing the claims made by EWG. In addition to such legal response, NSC filed (i)&#160;a request to submit the claim to arbitration, based on certain provisions of the by-laws of NSC, (ii)&#160;an appeal remedy against the preliminary relief (which was resolved in December&#160;2019, and ordered the revocation of the order of the Tenth Civil Judge granting EWG the preliminary relief), and (iii)&#160;a request for the setting of a guarantee to release the preliminary relief granted in favor of EWG.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;On October 1, 2020 and following an order from a Federal Judge obtained by NSC, the Tenth Civil Judge resolved to (i) move the claim of EWG to arbitration, and (ii) suspend the corresponding ordinary mercantile procedure. EWG challenged such resolution, arguing that its notification was not lawful. The Tenth Civil Judge dismissed such challenge, and thereafter EWG filed a remedy against such dismissal. NSC appeared before the court to vigorously oppose such remedy, which has been dismissed. To date, the referral to arbitration has not occurred and, as such, the procedure is currently suspended.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Notwithstanding the resolution of the Tenth Civil Judge to move to arbitration, subparagraphs a) and b) that follow describe certain separate amparo claims, and appeal remedies arising from or relating to such ordinary mercantile claim and amparo claims, all in chronological order. Due to the global COVID-19 pandemic, most tribunals in Mexico suspended their activities intermittently since March 2020, with certain such tribunals partially restarting on different dates and with different special rules. As such, several resolutions are pending issuance.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="font-style:italic;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 0pt 72pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:36pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;i style="font-style:italic;"&gt;a) Amparo filed by EWG against a resolution of the Tenth Civil Judge.&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"&gt;In July 2021, EWG filed an amparo claim against the resolution of the Tenth Civil Judge dismissing the remedy filed by EWG against the October 1, 2020&lt;b style="font-weight:bold;"&gt; &lt;/b&gt;resolution within the mentioned ordinary mercantile claim. NSC has filed before the corresponding amparo court a writ vigorously opposing this claim. Considering the foregoing, and that AdR was only named as a third party with interest, it is unnecessary for it to submit arguments against EWG in this claim. Further, CW-Cooperatief has not been notified of this amparo claim.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"&gt;Within this amparo claim, the Third District Court in Tijuana granted a suspension in favor of EWG, merely for the effect of holding in place the referral to arbitration subject matter of the October 1, 2020 resolution mentioned above. Such suspension was conditioned on the posting by EWG of a guarantee in the amount of 50,000 Mexican pesos, which has not been posted. Regardless of the effects of the suspension and the lack of the posting of a guarantee, NSC has filed an appeal remedy against its granting. &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"&gt;To date, and following a final hearing that took place in March 2022, a resolution to this claim is pending issuance. &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"&gt;&lt;i style="font-style:italic;"&gt;b) Appeal filed by NSC against the suspension granted in favor of EWG.&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 72pt;"&gt;The appeal remedy mentioned in the second paragraph of item a) immediately above was admitted by the superior court on October 18, 2021 and has yet to be resolved.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Notwithstanding the resolution to move to arbitration mentioned previously, CW-Cooperatief has not been officially served with the ordinary mercantile claim, and AdR has not been notified that it has to appear for such trial. In any event, AdR is only a named third party called to trial in this claim, and no claims have been made by EWG against AdR.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company cannot presently determine what impact the resolution of this litigation may have on its consolidated financial condition, results of operations or cash flows.&lt;/p&gt;</us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock>
    <cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity
      contextRef="Duration_5_1_2010_To_5_31_2010_srt_OwnershipAxis_cwco_NSCAguaMember_ELCRUOm45UyRTNSZEM2cww"
      decimals="-6"
      id="Narr__UeUiJjJwk2g1r3nkNvpmQ"
      unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">100000000</cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity>
    <us-gaap:AreaOfLand
      contextRef="As_Of_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_BXNxweqTQESXtjduBYzovg"
      decimals="1"
      id="Narr_maO5aswwhUu_aQgaZbr6hw"
      unitRef="Unit_Standard_ha_K-jpQBTkYEqk72sCRDBJPw">20.1</us-gaap:AreaOfLand>
    <cwco:PaymentForLandAndRightOfWayHeldForDevelopment
      contextRef="Duration_1_1_2012_To_12_31_2012_srt_OwnershipAxis_cwco_NSCAguaMember_VH9UoHlOJEqIuJBRDtZRQA"
      decimals="-5"
      id="Narr_pHOEr1qeR0atSoNXSGU1RA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21100000</cwco:PaymentForLandAndRightOfWayHeldForDevelopment>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="As_Of_8_31_2016_srt_OwnershipAxis_cwco_NSCAguaMember_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_9ebzzcwQnkOLu-XEmIumYg"
      decimals="3"
      id="Narr_HeIkGhWv70evzwiQyKvlIA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.996</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners
      contextRef="As_Of_2_28_2018_srt_OwnershipAxis_cwco_NSCAguaMember_V_2yYieCIE-chbMnJVCtNw"
      decimals="3"
      id="Narr_3hh1X6j4e0yOJ4ftVFmR9A"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.004</us-gaap:MinorityInterestOwnershipPercentageByNoncontrollingOwners>
    <cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity
      contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ"
      decimals="-6"
      id="Narr_WUGFenZ7yUa_Vlbfil1hbQ"
      unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">100000000</cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity>
    <cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity
      contextRef="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_FirstPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_JTQpx4uNUUeasrgD2BLxZg"
      decimals="-6"
      id="Narr_X-h6Y0PCkk-bQGWauGPbCg"
      unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">50000000</cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity>
    <cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity
      contextRef="Duration_8_22_2016_To_8_22_2016_cwco_TypeOfPhasesAxis_cwco_SecondPhaseMember_srt_OwnershipAxis_cwco_NSCAguaMember_rHzf6vwgrEi5AXn4ULiodg"
      decimals="-6"
      id="Narr_M3AlY7qZTUGiE5KawAS4qg"
      unitRef="Unit_Standard_gal_PvLicqdYVUaoTD2QepuTfw">50000000</cwco:SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity>
    <cwco:PeriodInWhichConstructionMustBeCompleted
      contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ"
      id="Narr_pntR9YdnvEKyyr3BdPCMFg">P36M</cwco:PeriodInWhichConstructionMustBeCompleted>
    <cwco:PeriodRequiredToOperateAndMaintainPlantAndAqueduct
      contextRef="Duration_8_22_2016_To_8_22_2016_srt_OwnershipAxis_cwco_NSCAguaMember__AIySaDQdEirhn4YfQ9yBQ"
      id="Narr_0ENai5rt9EWq8vAfSoIOyw">P37Y</cwco:PeriodRequiredToOperateAndMaintainPlantAndAqueduct>
    <cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses
      contextRef="Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA"
      id="Narr_yPHgV3JW3kOSZpp9rYMNCw">P20D</cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses>
    <cwco:DiscontinuedOperationsNonRecoverableExpenses
      contextRef="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA"
      decimals="0"
      id="Narr_NiUVd7GA0E-DWoU7Q_2tVA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">51144525</cwco:DiscontinuedOperationsNonRecoverableExpenses>
    <cwco:DiscontinuedOperationsNonRecoverableExpenses
      contextRef="Duration_8_28_2020_To_8_28_2020_srt_OwnershipAxis_cwco_NSCAguaMember_01bFyIz_wUKS2tHJNrgqWA"
      decimals="0"
      id="Narr_wKSqpi2e30qhmzz3d7UQjw"
      unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q">137333114</cwco:DiscontinuedOperationsNonRecoverableExpenses>
    <us-gaap:LossContingencyDamagesSoughtValue
      contextRef="Duration_2_9_2022_To_2_9_2022_srt_RangeAxis_srt_MinimumMember_mG-OHKlDjEuqWQVAjfeE5g"
      decimals="-6"
      id="Narr_PX_WDyQ4z0WcaDflEyK8aA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">51000000</us-gaap:LossContingencyDamagesSoughtValue>
    <us-gaap:LitigationSettlementExpense
      contextRef="Duration_2_9_2022_To_2_9_2022_e-hhH-eOVE-bcwgPDZ6Ogw"
      decimals="-6"
      id="Narr_m0WxbtJI9EinIuKBnXcjow"
      unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q">137000000</us-gaap:LitigationSettlementExpense>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="-5"
      id="Narr_ukJeXbIq5E6AXOg7Ivet2w"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3000000.0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <cwco:IncomeLossFromDiscontinuedOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw"
      decimals="0"
      id="Narr_QgYsNvgMtUaTKzt4NIHx6g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2574079</cwco:IncomeLossFromDiscontinuedOperations>
    <cwco:IncomeLossFromDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ"
      decimals="0"
      id="Narr_K90_sBJwRE-sQAG15nqbjQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4902243</cwco:IncomeLossFromDiscontinuedOperations>
    <cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw"
      decimals="0"
      id="Narr_wl5RjlEMtUmm-huH3-shAw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">963540</cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment>
    <cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ"
      decimals="0"
      id="Narr_nJrVoP5G90SSxCt_t-loUg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">316217</cwco:DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment>
    <cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Narr_y2bqGe2V6Uyb3HBBZsFZZQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">340910</cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable>
    <us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_QDTuP4vXO0WjKRZ9bM2piA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;Summarized financial information for the discontinued Mexico project development operation is as follows:&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Cash&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 750,048&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 154,130&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Prepaid expenses and other current assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 82,783&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 88,978&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&lt;span style="font-size:10pt;"&gt;Value added taxes receivable &lt;/span&gt;(net of allowance of $1,279,757 and $316,217, respectively)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 340,910&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,267,991&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5,682&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Land&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,126,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,126,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Other assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 19,288&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 33,909&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Total assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,319,927&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,677,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Total liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 190,141&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 190,933&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Income from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2,574,079&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,902,243&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Depreciation expense&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.31%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,545&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_MONLckqlEUC09CbAT1DcrQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">750048</us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_RbEb_U9BSkqQPFtXwJI3cg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">154130</us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_wgYtuOYvlUSWVMKsBUtHig_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">82783</us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_tDI96tAxbUGIT_muOcH3_A_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">88978</us-gaap:DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent>
    <cwco:ValueAddedTaxReceivableAllowance
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Narr_VCcG95C1c0itbFOtrBaWDA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1279757</cwco:ValueAddedTaxReceivableAllowance>
    <cwco:ValueAddedTaxReceivableAllowance
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Narr_xIzH2nWvzUaEhfWRtA5TLg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">316217</cwco:ValueAddedTaxReceivableAllowance>
    <cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_Hklq4AabeEyn8PE_o-jtXw_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">340910</cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable>
    <cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_0uT_UPIl1UmRMQIKjLvh2g_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1267991</cwco:DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_kvdRZpu2cU-XplnzUXgk4g_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5682</us-gaap:DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_V_IN9xkvl0GVFgBfNgVe4w_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21126898</cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_qnf5quTqzkGq9M_p4tqMuQ_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21126898</cwco:DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_B3zaKinH40eDJ13lhUk7Bg_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">19288</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_yiOmUKtox0mz0cxsXr2Seg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">33909</us-gaap:DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_9PDUtoEST0iioE4Up1NOlA_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22319927</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_9oYtBFJ5lESBoLbTw0Vfxg_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22677588</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q"
      decimals="0"
      id="Tc_rXPYF1OK0EG94n40aaw7HQ_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">190141</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_hy2QKkHXlU2nvnXxOa58nw"
      decimals="0"
      id="Tc_PQQi5tRmKkunyDER2WKReQ_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">190933</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation>
    <cwco:IncomeLossFromDiscontinuedOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw"
      decimals="0"
      id="Tc_pqYokcuEbky1P-CIwMEkeQ_5_4"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2574079</cwco:IncomeLossFromDiscontinuedOperations>
    <cwco:IncomeLossFromDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ"
      decimals="0"
      id="Tc_E0chz-lyUESmmbn_iE1OIQ_5_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4902243</cwco:IncomeLossFromDiscontinuedOperations>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw"
      decimals="0"
      id="Tc_DJMKKIEvD02oLMlRD3m9gA_6_4"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4545</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_nYLwGOH74k-vo5DSsip_GQ"
      decimals="0"
      id="Tc_QS1GYUD2Kk6KmtF6TNMjAQ_6_7"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4545</us-gaap:DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="As_Of_12_31_2021_srt_OwnershipAxis_cwco_NSCAguaMember_y34pSeGxCkyAelXMEnbZNA"
      decimals="2"
      id="Narr_skN-1gZ7S0-X03OXc5KX3g"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <us-gaap:EquityMethodInvestmentOwnershipPercentage
      contextRef="As_Of_12_31_2021_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_cwco_AguasDeRosaritoSapiDeCvMember_0yuwNccBOkiazVHGrZqHCg"
      decimals="2"
      id="Narr_ma6z4yOBcE2kQ77lrJc5lw"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.50</us-gaap:EquityMethodInvestmentOwnershipPercentage>
    <cwco:PaymentsToEnterOptionAgreement
      contextRef="Duration_2_1_2012_To_2_29_2012_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_djn4vltDBUmVX5_2Vdtjgw"
      decimals="0"
      id="Narr_MFOI0b9fOEOul0ilbbu__g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">300000</cwco:PaymentsToEnterOptionAgreement>
    <cwco:PaymentsForOptionExercised
      contextRef="Duration_2_1_2014_To_2_28_2014_HJpTja8YgkGJaUavhR6H2A"
      decimals="-5"
      id="Narr_6A_FyeGO8EC1evKwp2-tqw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1000000.0</cwco:PaymentsForOptionExercised>
    <cwco:PercentageOfVotingInterestAcquiredThroughOptionAgreement
      contextRef="As_Of_2_28_2012_srt_OwnershipAxis_cwco_NSCAguaMember__pEUZLjDdE-w_1NqjlSrvg"
      decimals="2"
      id="Narr_QvTUVDLVHUqkpy5r1jm3gQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.25</cwco:PercentageOfVotingInterestAcquiredThroughOptionAgreement>
    <cwco:RepaymentOfInterCompanyLoanPayable
      contextRef="Duration_5_1_2013_To_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_jqPLIJFZdku8X2mo0bAsBA"
      decimals="-5"
      id="Narr_NZrrgOssSkuulxBwagCPLQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5700000</cwco:RepaymentOfInterCompanyLoanPayable>
    <cwco:TotalVotingInterestPercentageAfterConversionOfLoan
      contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_fXbSxGQDBEil6EJ78NbOyg"
      decimals="4"
      id="Narr_oWvQZ9bGl0KLbxVtc-Kn2Q"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.9999</cwco:TotalVotingInterestPercentageAfterConversionOfLoan>
    <us-gaap:SharePrice
      contextRef="As_Of_5_31_2013_m3JQDoSat0mLyrWfhFiiHA"
      decimals="0"
      id="Narr_fk1IcgWL60ivALNFHrJL6g"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">1</us-gaap:SharePrice>
    <cwco:TotalVotingInterestPercentageAfterConversionOfLoan
      contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow"
      decimals="2"
      id="Narr_5NSkpwYN5Eid4BoOUoOcxA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.25</cwco:TotalVotingInterestPercentageAfterConversionOfLoan>
    <cwco:TotalVotingInterestPercentageAfterConversionOfLoan
      contextRef="As_Of_5_31_2013_srt_OwnershipAxis_cwco_NSCAguaMember_CSww3FOBT0m95B-81tEqow"
      decimals="2"
      id="Narr_2V0S9Tu3ZkaUm9h9_TnP2Q"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.25</cwco:TotalVotingInterestPercentageAfterConversionOfLoan>
    <cwco:OptionAgreementExpirationDate
      contextRef="Duration_2_1_2012_To_2_29_2012_srt_OwnershipAxis_cwco_NSCAguaMember_us-gaap_StatementClassOfStockAxis_cwco_OptionAgreementMember_CYVRFLGpzUqdDV3XmsDmrQ"
      id="Narr_L8X_SGJWSkCbk5Eo05Z8RA">2014-02-07</cwco:OptionAgreementExpirationDate>
    <cwco:PaymentsForOptionExercised
      contextRef="Duration_2_1_2014_To_2_28_2014_srt_OwnershipAxis_cwco_NSCAguaMember_Eluk4flh70GeTTsoCuRLVg"
      decimals="-5"
      id="Narr_nRi-bcXsXkqSxy2fPrdT2Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1000000.0</cwco:PaymentsForOptionExercised>
    <cwco:TotalPercentageOfOwnershipInterestInAcquiredCompany
      contextRef="As_Of_1_31_2018_srt_OwnershipAxis_cwco_NSCAguaMember_NnEiRjWZnkOVOe3bRoZISA"
      decimals="4"
      id="Narr_O3hlFvfS7EqTb5OOdiL-MQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.9999</cwco:TotalPercentageOfOwnershipInterestInAcquiredCompany>
    <cwco:GuaranteeFee
      contextRef="Duration_9_1_2021_To_9_30_2021_srt_OwnershipAxis_cwco_NSCAguaMember_4__250xRJkmbeyT7OJ-G1A"
      decimals="INF"
      id="Narr_sSeGaHSFHUmPSQhWev0TaA"
      unitRef="Unit_Standard_MXN_Dr4fKUiPj0WprzDJY0ur6Q">50000</cwco:GuaranteeFee>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_rYC2NHfqtES34hSoELe8jg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;9. Intangible assets&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company&#x2019;s purchase transactions for Aerex and PERC identified certain intangible assets. The remaining intangible assets and their respective useful lives are as follows: non-compete agreements (&lt;span style="-sec-ix-hidden:Hidden_7Vzzq6mJ2UyIIFUN-Z-LwA;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;3&lt;/span&gt;&lt;/span&gt; and &lt;span style="-sec-ix-hidden:Hidden_2CuHKC-KbEypnk7AYihx7Q;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;5&#160;years&lt;/span&gt;&lt;/span&gt;), trade names (&lt;span style="-sec-ix-hidden:Hidden_nq7s2BVEU0y53NOcLsh0Ow;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;15&#160;years&lt;/span&gt;&lt;/span&gt;), customer backlog (2 years), and facility management contracts (6 years).&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The costs and accumulated amortization for these assets were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cost&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-compete agreements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 530,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 530,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Customer backlogs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 360,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 360,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Facility management contracts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,200,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,200,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,790,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,790,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Accumulated amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-compete agreements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (493,889)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (443,889)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (740,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (560,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Customer backlogs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (360,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (210,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Facility management contracts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (794,445)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (427,778)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,388,334)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,641,667)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Intangible assets, net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,148,333&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Amortization of intangible assets for each of the next five&#160;years and thereafter is expected to be as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 582,778&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 546,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 546,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2025&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 485,554&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 180,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,060,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Amortization expense was $746,667 and $891,667 for the years ended December&#160;31,&#160;2021 and 2020, respectively.&lt;/p&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelatedIntangibleAssetsMember_PTA0S20ZJ0e5OIrmFA_AAg"
      id="Narr_iQbqjsSXWk-4OnXtEXl5Sg">P2Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_10_1_2019_To_10_31_2019_us-gaap_BusinessAcquisitionAxis_cwco_PercWaterCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_OpP9NCQeO06JFuLmPuYNug"
      id="Narr_SGGOkdHVpUGhqm40oydxMA">P6Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_gVhvah8QbUG5DzY4FfCBkg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cost&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-compete agreements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 530,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 530,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Customer backlogs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 360,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 360,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Facility management contracts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,200,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,200,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,790,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,790,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Accumulated amortization&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-compete agreements&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (493,889)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (443,889)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (740,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (560,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Customer backlogs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (360,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (210,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Facility management contracts&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (794,445)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (427,778)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,388,334)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,641,667)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.54%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Intangible assets, net&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,148,333&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA"
      decimals="0"
      id="Tc__xTmQN_8nUuOXTt6rCjjbw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">530000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ"
      decimals="0"
      id="Tc_2gCqSD7VlkCSWAGkXmBIuw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">530000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA"
      decimals="0"
      id="Tc_LKlHrTCzl0Wd2ozchFSjNQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2700000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA"
      decimals="0"
      id="Tc_ULAiyoyk50ukiTRXdSZFmQ_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2700000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg"
      decimals="0"
      id="Tc_QBadLYxRGUCuCE50uDssGg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">360000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g"
      decimals="0"
      id="Tc_NkEYBNHkjk6aSiCcNTjLCg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">360000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg"
      decimals="0"
      id="Tc_iGabdf1R1kmNrkXSNdEtnA_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw"
      decimals="0"
      id="Tc_qdazA85A7kSBcvLjW2lK9A_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2200000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_jeTS19KAeU-87hXp4L2xEQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5790000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_DQmh-Yt5jkSPVhmgi8dFPA_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5790000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_BS1HqchZyUCJ7m5wl6b2JA"
      decimals="0"
      id="Tc_njHi0h8dQkO_IC0ozrAP-A_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">493889</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember_jXHjAfHwA06mGTTmSpCsEQ"
      decimals="0"
      id="Tc_yV66evpc1UmcKjL7po5IrA_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">443889</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_WaUyjyRH402rkOui67Q2nA"
      decimals="0"
      id="Tc_C1FbwYS_Ck-LBQ-o4iaqjQ_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">740000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_TradeNameMember_cUmDWqmgAE62reK-s6enWA"
      decimals="0"
      id="Tc_aNs-LJ7yOEWhd-llVw4ARw_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">560000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_TvEDE0WSoEuoAfSv02Y_tg"
      decimals="0"
      id="Tc_KXMqfS_LskmrGQ2rag7Ibw_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">360000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_CustomerBacklogMember_ellSFcVSqEGFSdnGWRbG3g"
      decimals="0"
      id="Tc_fy8wjz58DEeKfzs_QDlf6w_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">210000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2021_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_vO1Bh-Nk3UGh93Exo6fzQg"
      decimals="0"
      id="Tc_T3bATTvHUUeeuI_89TWfyg_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">794445</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2020_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_cwco_ManagementContractsMember_73JjTpqf_EGEEBrJaAZuEw"
      decimals="0"
      id="Tc_lrRRuwn6Yka1Bhpqm2u86Q_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">427778</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_9U-sJQvVyUGLNiyn-u_XDw_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2388334</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_qcEkRNIX8EC5_R8M0zYqfg_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1641667</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_c-RjfgkFk0OARsZ-yGUxFA_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3401666</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_onjKEgTogUurRt72acz7EA_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4148333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_l1EziCebIkKlIgFbt4-5DQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Amortization of intangible assets for each of the next five&#160;years and thereafter is expected to be as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 582,778&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 546,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 546,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2025&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 485,554&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 180,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,060,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_21Gca78d1kqkBttZDvnzOA_1_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">582778</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_PhiyE0c8SEiZ4VIvvbsGyg_2_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">546667</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_yL4P2f7A90WaNuRBQcgz6w_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">546667</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_fvjLEkpw-k2D8Sb-4YWSjw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">485554</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_y688pogTTU-P8OWTTn3-3A_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">180000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_GQ9z4ORsDUmVkPeNm929Lw_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1060000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_fYSTI5CnV0ys_hqGch4ScA_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3401666</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_yH7ydCpDQE-GYIfWbX_xdw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">746667</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_K3vywZQI-0usygKBM1W0fg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">891667</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_3E-9_zjTp0CXv1srOsAPzQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;10. Leases&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company leases property and equipment under operating leases, primarily office and warehouse locations. For leases with terms greater than twelve months, the related asset and obligation are recorded at the present value of the lease payments over the term. Many of these leases contain rental escalation clauses which are factored into the determination of the lease payments when appropriate. When available, the lease payments are discounted using the rate implicit in the lease; however, the Company&#x2019;s current leases do not provide a readily determinable implicit rate. Therefore, the Company&#x2019;s incremental borrowing rate is estimated to discount the lease payments based on information available at the lease commencement.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;These leases contain both lease and non-lease components, which the Company has elected to treat as a single lease component. The Company elected not to recognize leases that have an original lease term, including reasonably certain renewal or purchase obligations, of twelve months or less in its consolidated balance sheets for all classes of underlying assets. Lease costs for such short-term leases are expensed on a straight-line basis over the lease term.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The land used by the Company to operate its seawater desalination plants in the Cayman Islands and The Bahamas is owned by the Company or leased to the Company for immaterial annual amounts and are not included in the lease amounts presented in the consolidated balance sheets.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="background:#ffffff;"&gt;All lease assets denominated in a foreign currency are measured using the exchange rate at the commencement of the lease. All lease liabilities denominated in a foreign currency are remeasured using the exchange rate as of the consolidated balance sheet date.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Effective March 9, 2021, the Company entered into a new office lease for the existing office located in Coral Springs, Florida under similar terms compared to the prior lease. This new lease expires, including all renewal options, on March 8, 2031.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-style:italic;"&gt;Lease assets and liabilities&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;ASSETS&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Current&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Prepaid expenses and other current assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 108,303&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,654&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Noncurrent&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,681,137&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,329,561&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Long-term assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 16,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 33,909&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,689&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,471,773&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;LIABILITIES&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Current&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current maturities of operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 592,336&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 455,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,195&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 29,432&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Noncurrent&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,137,394&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 982,076&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,819&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,499&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,748,744&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,469,795&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;Weighted average remaining lease term:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;7.0 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;3.4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1.6 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1.1 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;Weighted average discount rate:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;5.03%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;4.15%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;4.77%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;3.48%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The components of lease cost were as follows:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 656,130&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 773,756&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Short-term lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 79,606&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,518&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lease costs - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,281&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 127,983&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 767,017&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 907,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Supplemental cash flow information related to leases is as follows:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100.17%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cash paid for amounts included in measurement of liabilities:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating cash outflows for operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 708,095&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating cash outflows for operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 38,246&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 127,153&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Future lease payments relating to the Company's operating lease liabilities from continuing operations as of December 31, 2021 were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Years ending December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 665,817&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 643,234&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 390,629&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2025&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 268,056&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 227,541&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,025,239&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total future lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,220,516&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: imputed interest&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (490,786)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,729,730&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: current obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (592,336)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,137,394&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_VeXny9Ss-UeWzKxF5ogCVQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the lease-related assets and liabilities and their respective classification on the consolidated balance sheets:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;ASSETS&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.86%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Current&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Prepaid expenses and other current assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 108,303&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,654&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Noncurrent&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,681,137&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,329,561&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Long-term assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 16,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 33,909&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,700,689&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,471,773&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;LIABILITIES&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Current&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current maturities of operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 592,336&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 455,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,195&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 29,432&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Noncurrent&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,137,394&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 982,076&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent liabilities of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,819&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,499&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,748,744&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,469,795&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;Weighted average remaining lease term:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;7.0 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;3.4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1.6 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1.1 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;Weighted average discount rate:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;5.03%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;4.15%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:69.53%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.18%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;4.77%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;3.48%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock>
    <cwco:OperatingLeaseAssetsCurrent
      contextRef="As_Of_12_31_2020_us-gaap_BalanceSheetLocationAxis_us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember_oww2NlKTikmmAbu_wf9sNQ"
      decimals="0"
      id="Tc_z2hzI10VYkW6feoNtG-6Yg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">108303</cwco:OperatingLeaseAssetsCurrent>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_i1h62rOWkUKGofYjEEQ8kQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2654</cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_8TOml4kslU6Ob81soZ_KyQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2681137</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_ustCKspgQ0qvUfjy_vd5gw_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1329561</us-gaap:OperatingLeaseRightOfUseAsset>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_k2YoLQ2IlU6QrgUx-ipwpw_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16898</cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_nd5d-bLiSkC6d7sMZHkLVw_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">33909</cwco:DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent>
    <cwco:OperatingLeaseRightOfUseAssetNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_JjlNBnA5UkGxOErwgIvQaA_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2700689</cwco:OperatingLeaseRightOfUseAssetNet>
    <cwco:OperatingLeaseRightOfUseAssetNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_B9E3MfSsc0-0JptD34O9qg_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1471773</cwco:OperatingLeaseRightOfUseAssetNet>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_I3nFLui3pUCIx8zh1EYsIg_14_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">592336</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Z5X6StMw1kih7jfOkmAFig_14_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">455788</us-gaap:OperatingLeaseLiabilityCurrent>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_BvRBCClFEE-jezh6uEhMIA_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11195</cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities>
    <cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_09yT4ma3qka58nSDifDkLQ_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">29432</cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Cp-iPRE9qE-37mygAentGQ_17_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2137394</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_5IhNAiGJBEqQNwNCKVc5xg_17_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">982076</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_rWHCY1eX8kmDe5YomDGhag_18_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7819</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_eoGI2BbKf0W5w5O2I30tpw_18_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2499</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent>
    <cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_G8RZLl7Dw0CJhuYs4jdCeQ_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2748744</cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations>
    <cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_0sIEPj0Uw0am-1OgvXF8Zw_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1469795</cwco:OperatingLeaseLiabilityIncludingDiscontinuedOperations>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      id="Narr_eDTD1lgnZkSdGnSBnGGXcg">P7Y</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      id="Narr_9hp6aLL40EOo-FjcHE6lQg">P3Y4M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw"
      id="Narr_Y0un-5sTjkm-0nbA0McW8g">P1Y7M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ"
      id="Narr_5qcP9z-V00q_v5r5GTNkpg">P1Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="6"
      id="Tc_lBA-ra9viESyTP4E7p0O9A_26_3"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0503</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="6"
      id="Tc_tCrU2I1L10KUQyWmNj4Maw_26_6"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0415</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2021_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_9MC1DeCaGUCR1JbDuPpmkw"
      decimals="6"
      id="Tc_jAOq8G7120GJG7G7VI7lCw_27_3"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0477</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2020_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_us-gaap_SegmentDiscontinuedOperationsMember_v3ha_BNk0kCa8qcj9b3JmQ"
      decimals="6"
      id="Tc_0BH6gbXhNEGY4hpJXthumQ_27_6"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0348</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_u9_QWCsm106UJexTRhej3w">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The components of lease cost were as follows:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 656,130&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 773,756&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Short-term lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 79,606&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,518&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:68.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Lease costs - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,281&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 127,983&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:68.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 767,017&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 907,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_XQza6HtBGUaB7TRbNHFSjw_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">656130</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_pcuaELjeKE-XA-7ti-Ws5Q_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">773756</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_AAliSwodsUyTe2P1FQ41-w_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">79606</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_B_1BnQUIzkybnek9tYrDAg_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5518</us-gaap:ShortTermLeaseCost>
    <cwco:OperatingLeaseCostsDiscontinuedOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_XbbdsPhyiUeMBPQnE2FJ0A_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">31281</cwco:OperatingLeaseCostsDiscontinuedOperations>
    <cwco:OperatingLeaseCostsDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_iM4wdBVC-0OtUY2xdUmHnw_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">127983</cwco:OperatingLeaseCostsDiscontinuedOperations>
    <us-gaap:LeaseCost
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_XI7JGMHMH0mumL_obzImdg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">767017</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_oe_zFKnuS0a8QjXKGvJuLA_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">907257</us-gaap:LeaseCost>
    <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_qQQsm1cYTkGyNnVdp_HIrw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Supplemental cash flow information related to leases is as follows:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100.17%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cash paid for amounts included in measurement of liabilities:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating cash outflows for operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 708,095&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.56%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Operating cash outflows for operating leases - discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 38,246&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.38%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 127,153&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_nTQJYg0QcUOe2yrXbSt33w_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">710024</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_6Mg4n43FAkuHthF65h2uVQ_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">708095</us-gaap:OperatingLeasePayments>
    <cwco:OperatingLeaseDiscontinuedOperationsPayments
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Lb03O1bg60yGF8zhj9a_uQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">38246</cwco:OperatingLeaseDiscontinuedOperationsPayments>
    <cwco:OperatingLeaseDiscontinuedOperationsPayments
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_z0-roEH5I0mQDvZCORcHXA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">127153</cwco:OperatingLeaseDiscontinuedOperationsPayments>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_wGc4hmgSi0GR8-gurADGMw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Years ending December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 665,817&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 643,234&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 390,629&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2025&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 268,056&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 227,541&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,025,239&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total future lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,220,516&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: imputed interest&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (490,786)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,729,730&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: current obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (592,336)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Noncurrent lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,137,394&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_JIZxzIC3_06OxJx6xCbQkg_2_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">665817</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_uoSoU97VQEelwXE_ENb_MA_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">643234</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_s9p7RYVCrU2uNQyJZK9F7w_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">390629</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_XhqdY48rOE-A44vzD-Gwqg_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">268056</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_nxQVMTVH7EqrJbqmNBW8Wg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">227541</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_gWuibc18FUCZgLBRwDPHqw_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1025239</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_hJveIxligka2bP0kLAdvGQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3220516</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_FTEfgNPhg0aCcQIEceDqTg_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">490786</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <cwco:OperatingLeaseLiabilitiesContinuingOperations
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_uRtyGdaIFk6kJv07A_tBng_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2729730</cwco:OperatingLeaseLiabilitiesContinuingOperations>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_RK-yyZCHFkGiI1MEngw9fg_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">592336</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_jBs6Bo7NrUqlIdGsDRM1eQ_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2137394</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_AexQtayDhESewEamVQQQ0Q">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;11. Income taxes&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The components of income before income taxes for the years ended December 31, 2021 and 2020 are as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Foreign (not subject to income taxes)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,780,692&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,475,693&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Mexico&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,767,915)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,903,988)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,952,265)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,956,552&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,060,512&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,528,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,574,079&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,902,243&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,634,591&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,430,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company&#x2019;s provision (benefit) for income taxes for the&#160;years ended December&#160;31, 2021 and 2020, which related to U.S. operations, consisted of the following:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Federal&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 202,444&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 191,322&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;State&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (895)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 87,630&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Foreign&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 201,549&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 278,952&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Deferred:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Federal&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (524,733)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (132,957)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;State&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (124,798)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (59,271)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Foreign&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (649,531)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (192,228)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total provision (benefit)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (447,982)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 86,724&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;A reconciliation of the U.S. statutory federal tax rate to the effective rate for the&#160;years ended December&#160;31, 2021&#160;and 2020 is as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:24.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;U.S. statutory federal rate&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;State taxes, net of federal effect&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.72&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Nontaxable foreign income&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (43.36)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (17.28)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Research &amp;amp; development tax credit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (7.39)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (11.73)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Permanent items&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (6.26)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (0.67)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill impairment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 20.31&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Valuation allowance for deferred tax assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.65&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5.60&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (12.33)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.92&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The tax effects of significant items comprising the Company&#x2019;s net long-term deferred tax liability as of December&#160;31, 2021 and 2020 were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.68%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Continuing Operations&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax assets:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Research &amp;amp; development tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 398,413&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 613,003&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Loss carry forward&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 300,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Accrued compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 112,446&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 110,092&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Valuation allowances&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (139,207)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (496,343)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 672,197&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 226,752&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Property and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 254,301&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 252,800&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 982,422&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,188,009&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,236,723&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,440,809&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Net deferred tax liability&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 564,526&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,214,057&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Discontinued Operations&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax assets: &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Operating loss carryforwards - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,230,398&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,296,453&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Land basis difference - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,602,470&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,262,159&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Start-up costs - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,693,395&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,904,337&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Valuation allowances&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (10,526,263)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (10,462,949)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December 31, 2021, continuing operations has a federal net loss carryforward of $1.2 million and a state net loss carryforward of $1.1 million, both of which have an indefinite expiration date. Discontinued operations has a net loss carryforward of $14.1 million that will begin to expire, if unused, in various amounts between 2022 and 2041.&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_sPj0eNzldkOpfnBVm95fKA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The components of income before income taxes for the years ended December 31, 2021 and 2020 are as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:30%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Foreign (not subject to income taxes)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,780,692&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,475,693&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Mexico&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,767,915)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,903,988)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,952,265)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,956,552&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,060,512&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,528,257&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,574,079&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,902,243&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:67.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.67%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,634,591&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,430,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_wPPph8YzJUetISTYtRPyCA_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5780692</cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes>
    <cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Ex6-sp8V8keueXh3akNe_A_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6475693</cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_3zgxJSxzh0au6MePmfhBKQ_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1767915</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_VcEfnshfAUui25P79P6Yrw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-4903988</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_yEpnynRrt0CLlq5BUriPnw_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2952265</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_CHt91PxZ3UKo8e4xviptOw_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2956552</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Y-ZtJtH72EevTOZ6hZX_cA_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1060512</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_WwdDrTIj4UWoWIYBOWBTbA_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4528257</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_4-qdNYQt40-5SrCNTNxeKQ_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2574079</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <cwco:IncomeLossFromDiscontinuedOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_7GEQm4-WyUyqEPWwfgpJaQ_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4902243</cwco:IncomeLossFromDiscontinuedOperations>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_494A2qRe9kGyhGXud_nhYA_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3634591</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_kA39YqrcHEWRnGT56m21xg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9430500</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_R-4Y96EqyU2kbtmMifmsew">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company&#x2019;s provision (benefit) for income taxes for the&#160;years ended December&#160;31, 2021 and 2020, which related to U.S. operations, consisted of the following:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Current:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Federal&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 202,444&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 191,322&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;State&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (895)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 87,630&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Foreign&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 201,549&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 278,952&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Deferred:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Federal&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (524,733)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (132,957)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;State&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (124,798)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (59,271)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Foreign&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (649,531)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (192,228)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.82%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total provision (benefit)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (447,982)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.74%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 86,724&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_ZzNZEIb8TEaHfff8IG6ipA_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">202444</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_0txe33x3Sk2bAuCPfpc90A_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">191322</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_c7VuH7qQxUKK23cfXkVoyQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-895</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_hXnlDnRVWkuyqo3KmrcCMA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">87630</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_uDtX8NstMkazEhpQE9GYUg_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">201549</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_di7zqYd6qk23tbwuKZ_qCg_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">278952</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_sFhGCcFAmkSMabRimxyyAw_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-524733</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_gOJKM-CCi0Kau59ag_UJaw_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-132957</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_HP7npg-Gt0GEsMEWyZpmCA_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-124798</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_3RS68s5FIECW-VFr_MHp0w_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-59271</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_U8ay1qZJbUOlmvxIQLVF2w_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-649531</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_A7Kq967A50uxZhj1cCj17g_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-192228</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_1STA0NuAlkK34tuDJsa0GA_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-447982</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_yCuZzoIc60iHUdi27vHDLw_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">86724</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_baNAL0hUsk6LdTFg2VbwJA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;A reconciliation of the U.S. statutory federal tax rate to the effective rate for the&#160;years ended December&#160;31, 2021&#160;and 2020 is as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:24.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;U.S. statutory federal rate&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;State taxes, net of federal effect&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.72&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Nontaxable foreign income&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (43.36)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (17.28)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Research &amp;amp; development tax credit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (7.39)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (11.73)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Permanent items&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (6.26)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (0.67)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill impairment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 20.31&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Valuation allowance for deferred tax assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.65&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5.60&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.57%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (12.33)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.59%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.92&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_ZFn6Py7Xe0WSNGnWEq-syQ_3_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.2100</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_JGeSqaMZPkmWTkJSXky0tg_3_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.2100</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_0ahr2LBGwkKUp1hdmcOJeA_4_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0272</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_6hptT86P1k2uLd0Q-qTdqw_4_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0400</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_9_Ekmz5080mrHDr9wncWvg_5_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.4336</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_PRCO1_cpV0SVrZr14ZScAQ_5_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.1728</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_tiQveM2gTE6roV8OHGGV0w_6_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0739</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_XdONTTlLcUm55Zpgaf1f_w_6_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.1173</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <cwco:EffectiveIncomeTaxRateReconciliationPermanentItems
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_6inog7dj70me_mQeQ8KxiQ_7_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">-0.0626</cwco:EffectiveIncomeTaxRateReconciliationPermanentItems>
    <cwco:EffectiveIncomeTaxRateReconciliationPermanentItems
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_clu-pU-ZPk-alrsApsqbTg_7_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">-0.0067</cwco:EffectiveIncomeTaxRateReconciliationPermanentItems>
    <cwco:EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_K96dMSUAr0mX_TDgcg4pEw_8_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.2031</cwco:EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_BTYXaunSOEC470iieoZb1w_9_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0065</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_l2uANOi2PU-Ho23IYpmVCw_9_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0560</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_cAhfC4KgpkiWCmWlljbXcw_10_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">-0.1233</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_f8RILqixcUi8L0ABXpJbYQ_10_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0092</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_w26EfvG9Z02adMGF8iWj2A">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The tax effects of significant items comprising the Company&#x2019;s net long-term deferred tax liability as of December&#160;31, 2021 and 2020 were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.68%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:32.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Continuing Operations&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax assets:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Research &amp;amp; development tax credits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 398,413&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 613,003&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Loss carry forward&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 300,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Accrued compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 112,446&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 110,092&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Valuation allowances&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (139,207)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (496,343)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 672,197&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 226,752&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Property and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 254,301&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 252,800&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 6pt;"&gt;Intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 982,422&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,188,009&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,236,723&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,440,809&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Net deferred tax liability&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 564,526&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,214,057&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Discontinued Operations&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;Deferred tax assets: &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Operating loss carryforwards - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,230,398&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,296,453&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Land basis difference - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,602,470&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,262,159&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Start-up costs - Mexico&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,693,395&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,904,337&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Valuation allowances&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (10,526,263)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"&gt; (10,462,949)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:65.23%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.01%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_9tTh31QvU0ekz9_UkGmaAA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">398413</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_CIQA6KQIbE25dnW-xO3MKg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">613003</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsCapitalLossCarryforwards
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_I5k5V0sxXEWyMkVRWh5nYg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">300545</us-gaap:DeferredTaxAssetsCapitalLossCarryforwards>
    <us-gaap:DeferredTaxAssetsCapitalLossCarryforwards
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_DB7IMLyW2EyR_JBSfis6Sg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DeferredTaxAssetsCapitalLossCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_JJMJpSftm0Kf90qmy-IMsA_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">112446</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_9m1OUcCQkUWBWK03tQIOkw_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">110092</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_GGIoYFvUvkmjexhXS8WgGQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">139207</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Po0S76xW7EeE_UP-Ngwb_w_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">496343</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_2uuZ6mUxO0GQtjR9FYZUag_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">672197</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_BVZ8YvoLeEyq-k2M72vLSA_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">226752</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_IsH59UudZEe_apMNx_8ZSw_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">254301</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_2P06uuBRMkOPYzJnCP95NQ_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">252800</us-gaap:DeferredTaxLiabilitiesPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_ef4DuiuGSUab0vexHPCqxA_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">982422</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_Cq4qUgR5uUayxiYZODiLsA_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1188009</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_OFwRqQco1EmftNLHiAHjcQ_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1236723</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_mJ4UPYQ-Lku9x0_jdSDtfA_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1440809</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_R81E8WC0oUC43JEV2xYoVg_15_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">564526</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_pwa1g0_OtU-Fk4zfIeKWPA_15_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1214057</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="0"
      id="Tc_7uVPVXTxMUy9lSRJ2fUJYA_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4230398</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"
      decimals="0"
      id="Tc_zkOanF1BmkioDoahFbXU5A_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4296453</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <cwco:DeferredTaxAssetsLandBasisDifference
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="0"
      id="Tc_x53CHHmPV0uGd4K8ZaaSUQ_20_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1602470</cwco:DeferredTaxAssetsLandBasisDifference>
    <cwco:DeferredTaxAssetsLandBasisDifference
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"
      decimals="0"
      id="Tc_lFT84g903EuM2OYN0uIf-w_20_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1262159</cwco:DeferredTaxAssetsLandBasisDifference>
    <cwco:DeferredTaxAssetsStartupCosts
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="0"
      id="Tc_QJ8lddVttkmHaOYaO6Alxw_21_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4693395</cwco:DeferredTaxAssetsStartupCosts>
    <cwco:DeferredTaxAssetsStartupCosts
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"
      decimals="0"
      id="Tc_AKUYEWOhlk-Qg72qNgHhOQ_21_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4904337</cwco:DeferredTaxAssetsStartupCosts>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="0"
      id="Tc_NowHWn_kTkGH9q7asRloqQ_22_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10526263</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"
      decimals="0"
      id="Tc_nhGzw-b55k-PQVKXExQO5w_22_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10462949</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="0"
      id="Tc_M1bPydd_qki6kOVDUS3-Vw_23_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="As_Of_12_31_2020_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_TXKNS6ml3ka1eCacHcn87w"
      decimals="0"
      id="Tc_y6eID5I1T0S5VGrbge3tZw_23_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">0</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_DomesticCountryMember_VKsJALKJqkmUBfrieQXVyw"
      decimals="-5"
      id="Narr_PmRjkbxNQkyGcBbz7YAsmw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1200000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="As_Of_12_31_2021_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember__DZ4cNPD0EWFbocUw4NusA"
      decimals="-5"
      id="Narr_dHhKsQmdckieiP71kcgkUw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1100000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ"
      decimals="-5"
      id="Narr_srsPrfwNCUmJrwcVln8Wyg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">14100000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_DeeMjdKtaUaDiofjvlNg5g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;12. Earnings per share&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Earnings per share (&#x201c;EPS&#x201d;) is computed on a basic and diluted basis. Basic EPS is computed by dividing net income (loss) (less preferred stock dividends) available to common stockholders by the weighted average number of common shares outstanding during the period. The computation of diluted EPS assumes the issuance of common shares for all potential common shares outstanding during the reporting period and, if dilutive, the effect of stock options as computed under the treasury stock method.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following summarizes information related to the computation of basic and diluted EPS:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,449,658&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,613,771&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: preferred stock dividends&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (10,796)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (11,740)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations available to common shares in the determination of basic earnings per common share&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,438,862&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,602,031&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,574,079)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,902,243)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income available to common shares in the determination of basic earnings per common share&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 864,783&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,699,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,213,816&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,119,305&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plus:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of preferred shares outstanding during the period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 30,348&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 33,814&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Potential dilutive effect of unexercised options and unvested stock grants&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 65,981&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 70,836&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,310,145&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,223,955&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_S0QkeaZfgU2Zc-WIpIZe9Q">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,449,658&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,613,771&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Less: preferred stock dividends&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (10,796)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (11,740)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations available to common shares in the determination of basic earnings per common share&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,438,862&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,602,031&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,574,079)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,902,243)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income available to common shares in the determination of basic earnings per common share&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 864,783&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,699,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,213,816&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,119,305&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Plus:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; &lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of preferred shares outstanding during the period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 30,348&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 33,814&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Potential dilutive effect of unexercised options and unvested stock grants&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 65,981&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 70,836&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,310,145&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 15,223,955&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_rPmAV5hSQUWeg_CNF3Cw1Q_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3449658</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_vJzerMZLKEi-RpAfVURUAw_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8613771</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:DividendsPreferredStock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_PXdsEMCck0CQeco9BLRjdA_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10796</us-gaap:DividendsPreferredStock>
    <us-gaap:DividendsPreferredStock
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_q08bBS8RT0SQ9ubxaS5hLg_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11740</us-gaap:DividendsPreferredStock>
    <us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_3SM9iHrR_USnLjDL575qpQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3438862</us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic>
    <us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_E3hqJhnTcUCMsl6haJaj9w_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8602031</us-gaap:NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_A1P7syj4CkqhtHF9GAbO9Q_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2574079</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_mnQAaHK1kUK8SY7mtkj-Kw_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-4902243</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_w5oc5wM6wkmgOGtCK-A2Tg_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">864783</us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic>
    <us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc__ieK9SQmj0ehmv-GBvHUAA_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3699788</us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_Fh02H0OhEUqwZO0uFwbfKQ_9_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15213816</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_f3BZlgTFTkCoLVzKQJbvjA_9_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15119305</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_igq1xdAugEWwEPxpXyM3nQ_11_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">30348</us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock>
    <us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Ea92kTMLW0SCjKIvO8mtJQ_11_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">33814</us-gaap:IncrementalCommonSharesAttributableToConversionOfPreferredStock>
    <us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_jPYYx9PjdEaks0qNjGVR5w_12_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">65981</us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants>
    <us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_uP012xDtKkexS8LL0lqwPg_12_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">70836</us-gaap:IncrementalCommonSharesAttributableToCallOptionsAndWarrants>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_UWyfmrGsOUGs_t9P3WlPBA_13_3"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15310145</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_wZMpN_GmVEOHDoHIv6Sv_Q_13_6"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">15223955</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <cwco:DividendsTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_w5zgH3XkNUKit_P80xswoQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;13. Dividends&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Interim dividends declared on Class&#160;A common stock and redeemable preferred stock for each quarter of the respective&#160;years ended December&#160;31, 2021 and 2020 were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;First Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Second Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Third Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Fourth Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.34&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.34&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</cwco:DividendsTextBlock>
    <us-gaap:DividendsDeclaredTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_13iNQpf76EalxNxvYT1OFg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;First Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Second Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Third Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Fourth Quarter&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.085&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.34&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.34&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:DividendsDeclaredTableTextBlock>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_1_1_2021_To_3_31_2021_6GR5dwxrG0mn1S8Q07JC_A"
      decimals="3"
      id="Tc_uPumhhZfJEiMKwi07BbilQ_2_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_1_1_2020_To_3_31_2020_ysyumH7iX02apdWgbu732g"
      decimals="3"
      id="Tc_UtgBLYRaY0q6MKG77AUo6Q_2_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_4_1_2021_To_6_30_2021__Gabo7f7HE-d5MnY7otC0Q"
      decimals="3"
      id="Tc_HH3SckGOVkKm5Avh97wzvA_3_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_4_1_2020_To_6_30_2020_O-Nf9Aq6YUSFYO-nIC9DjQ"
      decimals="3"
      id="Tc_R4Nl5WZVWU61m5KfvZO4Ow_3_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_7_1_2021_To_9_30_2021_9jAZh4BOB0mcpaqQ_ZXlKw"
      decimals="3"
      id="Tc_JLUkbexv-EmUD14SEzCQ8w_4_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_7_1_2020_To_9_30_2020_R0W93yqJ5U-N4DNtaM_56A"
      decimals="3"
      id="Tc_oC-PAuRvKk-8cS1UFeNteQ_4_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw"
      decimals="3"
      id="Tc_HrvAZIejc0qlzKA8pxc09Q_5_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_10_1_2020_To_12_31_2020_yaHay4RHZ0q1Fp4qvuDHAg"
      decimals="3"
      id="Tc_M9sbQ8MTMkKsS3yoUZUogg_5_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.085</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="3"
      id="Tc_cpwQ8l5nJ0e3DaADBiHZQg_6_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.34</cwco:DividendsPerShareDeclared>
    <cwco:DividendsPerShareDeclared
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="3"
      id="Tc_8rf1DcS9qUGkZdanjXcexg_6_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0.34</cwco:DividendsPerShareDeclared>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_OIBCeuwPDkqc4fuePwQv_g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;14. Segment information&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has four reportable segments: retail, bulk, services and manufacturing. The retail segment operates the water utility for the Seven Mile Beach and West Bay areas of Grand Cayman Island pursuant to an exclusive license granted by the Cayman Islands government. The bulk segment supplies potable water to government utilities in Grand Cayman and The Bahamas under long-term contracts. The services segment designs, constructs and sells water infrastructure and provides management and operating services to third parties. The manufacturing segment manufactures and services a wide range of custom and specialized water-related products applicable to commercial, municipal and industrial water production, supply and treatment. Consistent with prior periods, the Company records all non-direct general and administrative expenses in its retail business segment and does not allocate any of these non-direct expenses to its other three business segments.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The accounting policies of the segments are consistent with those described in Note&#160;2. The Company evaluates each segment&#x2019;s performance based upon its income (or loss) from operations. All intercompany transactions are eliminated for segment presentation purposes.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company&#x2019;s segments are strategic business units that are managed separately because each segment sells different products and/or services, serves customers with distinctly different needs and generates different gross profit margins.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,104,953&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,800,869&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,884,857&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,072,823&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cost of revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,060,937&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,759,272&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,707,243&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,828,859&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,356,311&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gross profit &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,044,016&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,041,597&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,177,614&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 243,964&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,507,191&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;General and administrative expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,841,259&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,365,735&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,762,735&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,380,630&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,350,359&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gain (loss) on asset dispositions and impairments, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (246,851)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,500&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (485)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,900,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (3,145,836)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income (loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,044,094)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,677,362&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 414,394&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,036,666)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,010,996&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other income, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,623,595&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income before income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,634,591&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Benefit from income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (447,982)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,082,573&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income from continuing operations attributable to non-controlling interests&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 632,915&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,449,658&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,574,079)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 875,579&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2021 for the retail, bulk, services and manufacturing segments were $2,517,407, $3,331,554, $782,882 and $289,390, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;As&#160;of December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,601,619&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,682,951&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,698,797&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,365,940&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,349,307&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory, current and non-current&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,787,277&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,860,808&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 589,757&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,237,842&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,357,390&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,476,936&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;512,493 &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,599,720&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 617,334&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,737&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 61,792&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,863&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Intangibles, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,553,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 847,778&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,170,511&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,948,875&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,320,416&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,985,211&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,425,013&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total segment assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 61,736,441&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 68,723,405&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;16,049,001 &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,198,280&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 154,707,127&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,319,927&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 177,027,054&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,952,370&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,312,546&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,937,859&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,425,351&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cost of revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,080,814&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 16,959,563&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,698,214&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,121,080&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 45,859,671&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gross profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,871,556&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,352,983&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,239,645&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,304,271&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,768,455&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;General and administrative expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,879,445&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,260,062&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,834,917&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,460,474&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,434,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gain on asset dispositions and impairments, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,965&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,213&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,801&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,997&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income (loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,004,924)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,100,134&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 408,529&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,843,815&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,347,554&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other income, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,082,946&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income before income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,430,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Provision for income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 86,724&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,343,776&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income from continuing operations attributable to non-controlling interests&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 730,005&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,613,771&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,902,243)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,711,528&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2020 for the retail, bulk, services and manufacturing segments were $2,388,781, $3,869,377, $762,182 and $386,169, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:68.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;As&#160;of December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,444,455&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,022,813&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,420,609&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 596,099&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,483,976&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory, current and non-current&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,787,163&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,795,544&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,138,313&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,721,020&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,947,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,611,567&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 487,973&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,640,899&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 305,110&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,737&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 103,537&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 440,384&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Intangibles, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,200,555&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 947,778&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,148,333&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,170,511&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,948,875&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,320,416&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,885,211&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,325,013&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total segment assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 56,425,159&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 74,771,798&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,470,322&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,210,685&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 156,877,964&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,677,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 179,555,552&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Revenues earned by major geographic region were:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cayman Islands&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,935,746&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 25,640,169&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Bahamas&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,031,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,654,153&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,489,851&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,918,527&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenues earned from management services agreement with OC-BVI&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 406,358&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 415,277&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Revenues earned from major customers were:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue earned from the Water and Sewerage Corporation ("WSC")&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,031,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,527,487&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Percentage of consolidated revenue earned from the WSC&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;36%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;30%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue earned from one manufacturing segment customer&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 406,073&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,965,041&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Percentage of consolidated revenue earned from the one manufacturing segment customer&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;14%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Property, plant and equipment, net by major geographic region were:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cayman Islands&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,687,944&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 28,474,748&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;The Bahamas&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,004,707&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,975,427&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,253,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,237,809&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Narr_PE08Wig6oE29TfxlQ8a12A"
      unitRef="Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g">4</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_T6wzxfax4EuA6IZH0hwwug">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,104,953&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,800,869&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,884,857&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,072,823&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cost of revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,060,937&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,759,272&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,707,243&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,828,859&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,356,311&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gross profit &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,044,016&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,041,597&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,177,614&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 243,964&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 23,507,191&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;General and administrative expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,841,259&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,365,735&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,762,735&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,380,630&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,350,359&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gain (loss) on asset dispositions and impairments, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (246,851)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,500&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (485)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,900,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (3,145,836)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income (loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,044,094)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,677,362&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 414,394&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,036,666)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,010,996&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other income, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,623,595&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income before income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,634,591&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Benefit from income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (447,982)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,082,573&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income from continuing operations attributable to non-controlling interests&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 632,915&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,449,658&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,574,079)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 875,579&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2021 for the retail, bulk, services and manufacturing segments were $2,517,407, $3,331,554, $782,882 and $289,390, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;As&#160;of December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,601,619&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,682,951&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,698,797&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,365,940&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,349,307&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory, current and non-current&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,787,277&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,860,808&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 589,757&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,237,842&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,357,390&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,476,936&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;512,493 &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,599,720&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 617,334&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,737&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 61,792&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 710,863&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Intangibles, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,553,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 847,778&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,401,666&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,170,511&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,948,875&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,320,416&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,985,211&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,425,013&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total segment assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 61,736,441&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 68,723,405&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;16,049,001 &lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,198,280&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 154,707,127&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,319,927&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.89%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.67%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 177,027,054&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:67.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,952,370&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,312,546&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,937,859&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,425,351&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cost of revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,080,814&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 16,959,563&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,698,214&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,121,080&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 45,859,671&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gross profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,871,556&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,352,983&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,239,645&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,304,271&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,768,455&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;General and administrative expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,879,445&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,260,062&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,834,917&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,460,474&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,434,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Gain on asset dispositions and impairments, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,965&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,213&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,801&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,997&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income (loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (1,004,924)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,100,134&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 408,529&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,843,815&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,347,554&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other income, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,082,946&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income before income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,430,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Provision for income taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 86,724&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,343,776&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Income from continuing operations attributable to non-controlling interests&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 730,005&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8,613,771&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net loss from discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (4,902,243)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:32.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Net income attributable to Consolidated Water Co. Ltd. stockholders&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,711,528&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Depreciation and amortization expenses for the&#160;year ended December&#160;31, 2020 for the retail, bulk, services and manufacturing segments were $2,388,781, $3,869,377, $762,182 and $386,169, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="14" style="vertical-align:bottom;white-space:nowrap;width:68.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;As&#160;of December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Retail&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Bulk&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Manufacturing&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.49%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Accounts receivable, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,444,455&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,022,813&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,420,609&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 596,099&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,483,976&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Inventory, current and non-current&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,787,163&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,795,544&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,138,313&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,721,020&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Property, plant and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,947,545&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 27,611,567&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 487,973&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,640,899&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 305,110&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31,737&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 103,537&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 440,384&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Intangibles, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,200,555&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 947,778&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,148,333&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Goodwill&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,170,511&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,948,875&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,320,416&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,885,211&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 13,325,013&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total segment assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 56,425,159&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 74,771,798&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 14,470,322&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,210,685&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 156,877,964&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Assets of discontinued operations&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 22,677,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:31.11%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.68%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 179,555,552&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_R7sG8mopYkaSJ2TvFZmbBw_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22104953</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_OMRzQRJIz06CtL6HPAfCAw_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26800869</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_9-TrDH5MAE2f7MZEHJIIcQ_3_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13884857</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_DvuZBFPE9EuLU9lBRKztmg_3_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4072823</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_1kjcerg2YEKbdkv7UaAYMA_3_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">66863502</us-gaap:Revenues>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_iuW8Fvp8T065QRXjwIQHGg_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11060937</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_gTIytl1yU0qAe5W8XhWhxg_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17759272</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_RllzzapVnUeSeXMm5aNmvQ_4_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10707243</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_oQ7anhjOTEq9cCLeK3kuGA_4_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3828859</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_1NA7ReNAPEOlWMiFL6LnOA_4_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43356311</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_C19iCbJ5ZkauVjCJSOMtrQ_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11044016</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_nhcbMsUpdUmlLZsTreSiSA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9041597</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_Du849p-UIku-a27hwPL9bA_5_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3177614</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_K_KADCgS5Ea_cuxT_Zea1A_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">243964</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_ncrA1xLQLUCDO5D85mVb8A_5_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">23507191</us-gaap:GrossProfit>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_SEWcQEek0kml7qPrtKU_-Q_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12841259</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_tpnUCgenZEqcbWpS96qtHw_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1365735</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_93ZrFv1pXUuBwTByNYEWIg_6_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2762735</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_oYvNfhJ2WUSfQKZRoNmavA_6_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1380630</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_eOhQLU02B0eI7LpLMiIL2A_6_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18350359</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_oU5xV_VH90qxP6uJXvQF5A_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-246851</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_p33QqRSrtkm0B5O_KrRM7A_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1500</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_fgUUBaotJE242NaKNK-m9Q_7_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-485</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_4fk47PNUZUyAd0j0W5mzgA_7_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2900000</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_4ZaJNconzE2KGMIKuVDRnA_7_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-3145836</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Tc_j9DtoJdFrEuw5V_wcHSCPQ_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2044094</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Tc_6WpATnC6mkGcWDstkZCROQ_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7677362</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Tc_qxlgWA9NIEWUOUHiGzKB9A_8_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">414394</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Tc_zpUDH7cqykeaTMUYE7LL-A_8_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-4036666</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_nmrqM9aTIUWkQ_U16xHpzQ_8_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2010996</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_ws7uzUWUkkSpNlBxOP5ebA_9_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1623595</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_b-cQUvXtKkK9aSHKcgKheA_10_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3634591</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_dMwKBmz3SUO_nrWuDuITsw_11_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-447982</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_m-M4BmFl-k-VMkj-EZK8vQ_12_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4082573</us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_shjo3zXUA02cjLBi6so5Dg_13_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">632915</us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_BmV-0-eBl0SeZkzOxqlqIw_14_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3449658</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_5RsaA2Lh60aKuNNp8dRFag_15_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-2574079</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_PDKoBnlKGkChrsITwZdNrw_16_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">875579</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA"
      decimals="0"
      id="Narr_FgTmcfDg506p5HA4m3tYvw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2517407</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_OkVFgb4LFUuDTVP3lQFysQ"
      decimals="0"
      id="Narr_6pL7O07byUGlJv6OiC3rQQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3331554</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_5eownsdHPkahSRpViYTCFg"
      decimals="0"
      id="Narr_SnaYr4OjmUKIJeHqj6dbFA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">782882</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_EhKDgsE6Bku_dvkqzfmWxg"
      decimals="0"
      id="Narr_NEFqaomBFUysB5-dchXBGA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">289390</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_qnA7GoNJrU2t9GthmnSCyw_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2601619</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_S61L6tKf-kaYP5WM2cvKXg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21682951</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"
      decimals="0"
      id="Tc_O9gMBGeUxU6RLwGVDd5gKA_3_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1698797</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_dTxMBwVHt0SMBdtNc3aJvA_3_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1365940</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_UIq403GsBUmGLASqhlBKww_3_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27349307</us-gaap:AccountsReceivableNetCurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_veUIyVhGM0eNOEr_Ja9DzQ_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2787277</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_o7EKxAZCV06uqCFQ9eYnAw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3860808</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_EOAOLYTO4kCHa4HnEEz0fQ_4_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">589757</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_10tqOJx3ekqpWLOaI0qaEA_4_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7237842</cwco:InventoryCurrentAndNoncurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_uPP6PAcXfECUqGeJcRTVqg_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26357390</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_j02nXPdeYECfPZj2gdPqqg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24476936</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"
      decimals="0"
      id="Tc_9-9Onq83YUKiILnJoT9CgQ_5_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">512493</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_1oCxSzkIw0Oz7qU_htfL0g_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1599720</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_MjxtA5km2kCBzAaIgjFGaQ_5_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">52946539</us-gaap:PropertyPlantAndEquipmentNet>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_9bf--fK_kECftsNBr4q7mQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">617334</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_fbI_npJktkG9Pp0aFwyYcg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">31737</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_JjuQKzmv50uvlZUAaNFKlg_6_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">61792</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_M8yxbMjyb0SiJl-mEC5gwg_6_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">710863</cwco:ConstructionInProgress>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"
      decimals="0"
      id="Tc_ImiTmmDknU2OdRKHX7n1kQ_7_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2553888</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_KycETjtgkkGjsUyhLo5rSg_7_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">847778</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_WTMqZa4dKkujVjvxGjQVgw_7_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3401666</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_6vHr73T1WEOVCZ0wAx6npw_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1170511</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_TjCMlN6DsUS5ElAThuTMtg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1948875</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"
      decimals="0"
      id="Tc_r4b_7SH5WU-B5t6EBCoHIg_8_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5320416</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_d4UPsEUjCk2iZzo4ellKjg_8_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1985211</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_KMG8jAX_1EaPDnAoMPrsIQ_8_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10425013</us-gaap:Goodwill>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_XA0Ww9zXt02beuDo9fC8Ow"
      decimals="0"
      id="Tc_MP6AuqNKyEO_wBfbap3EBw_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">61736441</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_-C9y1pyOqUyt0u2VA1Fe_w"
      decimals="0"
      id="Tc_kM4WTC7ljUSVcjO-Z06w0A_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">68723405</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_vBWqw0YMS0KaldaEReGt-w"
      decimals="0"
      id="Tc_O-FPzrJJn0CrMUOp14VH8w_9_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16049001</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember__Nv2sfUtt0mpFrv49UnEJw"
      decimals="0"
      id="Tc_N9m8bgZ45EeImJ8Q9ls4Qw_9_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8198280</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_AmJAJUV6uUGFK62J2ItC9g_9_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">154707127</cwco:AssetsContinuedOperation>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_tndJD7TdTUW0iAXYupxGAg_10_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22319927</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_r-7VJZ7BEkugIJQBrwxeqg_11_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">177027054</us-gaap:Assets>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_pHJWycxEoEOSlaR6H7X-Tg_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22952370</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc_cOkIoF1DF023djLuUXvbNw_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24312546</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_ZeUcjRYLu06IhuaRTrlsZQ_3_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12937859</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_a2GCOk-aVkSPQK1H3QxbYg_3_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12425351</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_kVV9JFTGv0iweVprdkZJTw_3_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">72628126</us-gaap:Revenues>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_ExFgh1o7wEKDmT70ILfzZw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11080814</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc_O-hoga2KiEy5aV8SZJrqCA_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16959563</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_81cQZLXGrUSBdvMOoGstxg_4_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9698214</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_TM557paTqEq-88zEoMoZTg_4_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8121080</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_ZYGgFnJ510eW1Uc10pynLw_4_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">45859671</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_YzlpSY33hU6nFydWbiZN5w_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11871556</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc_RigeA0jsrkiDS1Uu8vemdg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7352983</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_f7l7GcjrY065gChqsdGroA_5_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3239645</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_TSbYJl0660aongzlB11q7A_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4304271</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_zUEJcKOJ90GNzkuRHqL7LA_5_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26768455</us-gaap:GrossProfit>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_GtPrwkn3QkGLzfzxZ_9MrQ_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12879445</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc__AyrwY2l0kGXmRp9kX1Lbg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1260062</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_tTtTj4H4B0OH4CSnZEgkJA_6_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2834917</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_cPw3uT83bkqii5_mLzMnnA_6_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1460474</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_BoxSl0NpaU-78t-IgmHr5g_6_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18434898</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_8VWUWTmXoUiVXUr1UAl2aw_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2965</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc_TBSk_w5o202bg7cgKQPJag_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7213</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_XP_vHw1hJ0iw56O14xcr8Q_7_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3801</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_ydDzOcaj0EmISxRJfCZMoA_7_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_pSG0oBTSMkqRIG8ncH7XEA_7_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13997</us-gaap:GainLossOnSalesOfAssetsAndAssetImpairmentCharges>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Tc_DsuHiWVCnE2E1xvsuBIYZg_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-1004924</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Tc_7kku0IGlz0OUZTdQgdI-2g_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6100134</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Tc_PeaveI5URUm_X4siV9ccEQ_8_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">408529</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Tc_oD5l2i3MGUuKhhyPF9oTgA_8_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2843815</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_udwhAKSQ5keOXryS18AZdw_8_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8347554</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_R14Y8o93s0KL__d0ouRGtQ_9_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1082946</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_zBJQMu7Co0atj15yvQAwFQ_10_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9430500</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_6iOlltMKnUWjh7Z1WJ5Rqw_11_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">86724</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_sNt-1TgxyEWJVibsIHO0dQ_12_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9343776</us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_BAUGf-D8ekiOT3jYcLA1Lw_13_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">730005</us-gaap:IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_EqxZsExY00C-2dBydTA3Ag_14_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">8613771</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_OZyXQorjJUuLCcZDk_VxOg_15_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-4902243</us-gaap:IncomeLossFromDiscontinuedOperationsNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_j2JDoRm75EGqEzpklf97xA_16_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3711528</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_6pVdwRvTWkqMm_Za_Ws5Aw"
      decimals="0"
      id="Narr_vVhoUkrzUkOldfhxtlVUYg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2388781</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_bjYiBg5T30GDy5cGfcSkQA"
      decimals="0"
      id="Narr_Caqjn0S1mEmCwDd6ZBKb8g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3869377</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_59_glr1_f0ONv24PjzkQyw"
      decimals="0"
      id="Narr_c9K7LZojskqgmUplwoMiCg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">762182</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_1wCg0POci0a13QlVumvOxA"
      decimals="0"
      id="Narr_QXgnFGTkbkmbu8zdijpgew"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">386169</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_WDJbKNFn9EywDGx003ERSQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2444455</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_MDPSQjJeT0CKAb1mFA1u0Q_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17022813</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"
      decimals="0"
      id="Tc_kYONammtb0GKAZVsxuqd-g_3_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1420609</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_Xi2kpWqvck2CGx-HPrJ9pA_3_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">596099</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_3bxg2vgQnkO2YM2RCEeBOA_3_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21483976</us-gaap:AccountsReceivableNetCurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_tH5bqhWWbkiZUdZKh3WWsw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2787163</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_OIijUwm0eUiTg7jfmKDwKg_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3795544</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_ATeL_3R-RkqMeC8V-G98vQ_4_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1138313</cwco:InventoryCurrentAndNoncurrent>
    <cwco:InventoryCurrentAndNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_9bK8_3Z1Y0yl0evE99z29g_4_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7721020</cwco:InventoryCurrentAndNoncurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_6Fd4Cw2CQU-L2hqIDVLvbw_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27947545</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_WrrR27M_5kyVQebehLgyUQ_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">27611567</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"
      decimals="0"
      id="Tc_2wuiAJMrbUKoB7YMrgEurA_5_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">487973</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_MWJdi3gi6kCVKUcVDj9etg_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1640899</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_RYr5jbwJpUOeJsVgT2aFBg_5_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">57687984</us-gaap:PropertyPlantAndEquipmentNet>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_Enyu6Elu10uBkGwEXQMojg_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">305110</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_EWey2UsY0EqCuit83e8lmw_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">31737</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_UxW59v4vnkCyeYbwN4CgFg_6_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">103537</cwco:ConstructionInProgress>
    <cwco:ConstructionInProgress
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_0rsNtZzNe0WXZWZwXP9w8w_6_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">440384</cwco:ConstructionInProgress>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"
      decimals="0"
      id="Tc_G2PpU9w9O0W0yRZ1TdQphA_7_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3200555</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_BeI6Ivws3ECfAy28yo_ZLw_7_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">947778</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_wulmnFbsfkqkrBpGNvcVJA_7_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4148333</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_mvf6aBfXz0KczjUQ2HvbYg_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1170511</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_GnPsSmnFSEeNyWs19TbHLw_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1948875</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"
      decimals="0"
      id="Tc_RPr48GbbvkiY4dIarnu7mw_8_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5320416</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_1GTfW-65SkG_Wz3_L-4ZQA_8_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4885211</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_lA6HDZyPB0ugsj61Wp2WHA_8_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">13325013</us-gaap:Goodwill>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_p65NGMZsTUy3eCSGN1bPAA"
      decimals="0"
      id="Tc_mFY5hpoJ3ECLKqymd2zyQA_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">56425159</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_BulkMember_AqJvhdOQE0OM-imCva5lNQ"
      decimals="0"
      id="Tc_qEtq5G1VjU-lpyjp_R0kvw_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">74771798</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ServicesMember_mAbJIuOCWE61g7Z0KKhGVg"
      decimals="0"
      id="Tc_0HGxurH520iwfREPyrKwpg_9_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">14470322</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2020_us-gaap_StatementBusinessSegmentsAxis_cwco_ManufacturingUnitsMember_mDh6eda7BkqRj1HOyo6C1g"
      decimals="0"
      id="Tc_FD-s8IhUEkWgRx-PL1Wyew_9_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11210685</cwco:AssetsContinuedOperation>
    <cwco:AssetsContinuedOperation
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc__UhuyJT1O0y7r3Rxeb65dg_9_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">156877964</cwco:AssetsContinuedOperation>
    <us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_JaUbc42dckO_EY64Cr9rtQ_10_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22677588</us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_AWWOV7ydIU-hJAEKyvMLVA_11_15"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">179555552</us-gaap:Assets>
    <us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_FsEtHRVYvESslvscy3xbjQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cayman Islands&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,935,746&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 25,640,169&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Bahamas&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,031,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,654,153&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 17,489,851&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,918,527&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenues earned from management services agreement with OC-BVI&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 406,358&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 415,277&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 66,863,502&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 72,628,126&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Revenues earned from major customers were:&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue earned from the Water and Sewerage Corporation ("WSC")&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,031,547&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 21,527,487&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Percentage of consolidated revenue earned from the WSC&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;36%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;30%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:73.83%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Revenue earned from one manufacturing segment customer&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 406,073&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,965,041&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:73.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Percentage of consolidated revenue earned from the one manufacturing segment customer&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;1%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt;14%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_KY_r_55bqiwcUO3N5_w6UPbXA"
      decimals="0"
      id="Tc_sGYFM4zG7ESKfjSUqf0MPw_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24935746</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_KY__AeU1tTbRU-QVqy9aWCieA"
      decimals="0"
      id="Tc_4xg7VCaqCUaE8fLDIPQUGg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">25640169</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_BS_QXJQmBZH70mreEnT1WYT6A"
      decimals="0"
      id="Tc_XTqOwi0KJka7Zf5BhmxiKg_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24031547</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_BS_9Fb5DN0wpkSlngUBr-8NMg"
      decimals="0"
      id="Tc_thzCpZJruEq2Ke2CYD0Olw_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21654153</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_US_RSDYhylA5EaUs8pvVMkuhQ"
      decimals="0"
      id="Tc_zRTvBJcR00eORWQF_t-7wA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">17489851</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_US_7aRtVe6AbEi0OEu3t7kNBg"
      decimals="0"
      id="Tc_DeE6td46-Emx9a5ysf0HNg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24918527</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_VG_f1PvOgup9EuImo57Pqu29Q"
      decimals="0"
      id="Tc_66T-7EQ-AkioUGg9lBxlHA_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">406358</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_country_VG_p9lQjE2KGkWokzSh2X3lEA"
      decimals="0"
      id="Tc_5wJljrgGbkefh5LUktRKXA_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">415277</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_yRn6LoIEzU6zRsx9HhyIag_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">66863502</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_-Kzaflf9GkW6gpv4d2xieA_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">72628126</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ"
      decimals="0"
      id="Tc_BfJypifmAkak5RhGovFhsQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24031547</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA"
      decimals="0"
      id="Tc_-68O9vncCkigw4Z3Vho41w_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21527487</us-gaap:Revenues>
    <cwco:EntityWideRevenuesMajorCustomerPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_JhYChLzjQUq3QRyt8W7mbQ"
      decimals="2"
      id="Tc_jOJcmw6P4UaE8K2ZRu9WjQ_4_3"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.36</cwco:EntityWideRevenuesMajorCustomerPercentage>
    <cwco:EntityWideRevenuesMajorCustomerPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_WaterAndSewerageCorporationMember_oWds8naNrkKw46eMlPI0iA"
      decimals="2"
      id="Tc_FtR8z8YYyEy-DmgtQcP5lw_4_6"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.30</cwco:EntityWideRevenuesMajorCustomerPercentage>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw"
      decimals="0"
      id="Tc_iZTSfyuFfEi-smQVFO1EmA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">406073</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw"
      decimals="0"
      id="Tc_gsAaoT5pIUuqmLoV5vE2gg_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9965041</us-gaap:Revenues>
    <cwco:EntityWideRevenuesMajorCustomerPercentage
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_cwco_OneCustomerMember_QNtYFBDwc0KRKkwRLSIwFw"
      decimals="2"
      id="Tc_dpqpszxadUCbhKH1dBIuSA_6_3"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.01</cwco:EntityWideRevenuesMajorCustomerPercentage>
    <cwco:EntityWideRevenuesMajorCustomerPercentage
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_StatementGeographicalAxis_cwco_OneCustomerMember_X0HxH-rGbUWDCA-7FQDUpw"
      decimals="2"
      id="Tc_iLTx1FXLvUig2-DtxMbxxg_6_6"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.14</cwco:EntityWideRevenuesMajorCustomerPercentage>
    <us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_Muinyoyuak60yiTTiDAhWg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"&gt;&lt;span style="font-size:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Cayman Islands&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,687,944&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 28,474,748&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;The Bahamas&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 24,004,707&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 26,975,427&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,253,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,237,809&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 52,946,539&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 57,687,984&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_KY_F0359zoYFkaYzxPK-dCbIg"
      decimals="0"
      id="Tc_Y6pwiu6jNEOj4u8uNMbmnw_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26687944</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_KY_tyOKrtxwtEWR608WKbWa3w"
      decimals="0"
      id="Tc_ADm9QB_Y9kioHlRcsN2gJg_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">28474748</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_BS_WSXr0WodAEeIoLOZSTfzRQ"
      decimals="0"
      id="Tc_RDplTB1ysECVBYV0Di0kQw_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">24004707</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_BS_Df9FN9wj6EOR92k835m07Q"
      decimals="0"
      id="Tc_yqi17U5dFUi3Iw7jOjVIsg_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">26975427</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_srt_StatementGeographicalAxis_country_US_s1p_n0GAck66NMeZmI3WSw"
      decimals="0"
      id="Tc_2Wrzz_lC9UelxEmRHOXvHA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2253888</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_srt_StatementGeographicalAxis_country_US_8fspIUrFq0iXznqIAr9gnw"
      decimals="0"
      id="Tc_XMPTK18B-kGiLhORyqD4PA_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2237809</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_dqvZHpXQoE6p_t_iKy130g_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">52946539</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_p3OGKzovJUuUOCE1PQ4nAg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">57687984</us-gaap:PropertyPlantAndEquipmentNet>
    <cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_J1ZXaDNEC0ifjRAwoDg0HA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"&gt;15. Cost of revenue and general and administrative expenses&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cost of revenue consist of:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Electricity&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,698,148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,389,361&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,855,073&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,202,012&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Fuel oil&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,742,056&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,157,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employee costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,439,042&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,465,514&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Maintenance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,092,776&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,859,262&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Retail license royalties&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,418,820&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,489,862&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,625,862&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,491,799&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Materials&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,952,764&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,786,698&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,531,770&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,017,770&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,356,311&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 45,859,671&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;General and administrative expenses consist of:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employee costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,562,125&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,086,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,813,026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,436,957&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Professional fees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,506,423&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,488,948&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Directors&#x2019; fees and expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 851,775&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 865,555&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 140,140&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 133,477&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Amortization of intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 746,667&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 891,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,730,203&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,531,706&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,350,359&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,434,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock>
    <cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_y5PJeJAnWkiN0Kaw4yZ-Yw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Cost of revenue consist of:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Electricity&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,698,148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,389,361&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,855,073&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,202,012&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Fuel oil&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,742,056&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 4,157,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employee costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,439,042&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 11,465,514&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Maintenance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,092,776&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,859,262&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Retail license royalties&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,418,820&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,489,862&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,625,862&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,491,799&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Materials&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,952,764&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 5,786,698&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 6,531,770&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,017,770&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 43,356,311&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 45,859,671&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:24.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;General and administrative expenses consist of:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employee costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,562,125&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,086,588&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,813,026&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,436,957&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Professional fees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,506,423&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,488,948&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Directors&#x2019; fees and expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 851,775&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 865,555&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 140,140&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 133,477&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Amortization of intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 746,667&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 891,667&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:73.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,730,203&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,531,706&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:73.13%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,350,359&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 18,434,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_dwJApOGydku2pSUkdE4cXA"
      decimals="0"
      id="Tc_n0n8e9YqW0WjKfitSHrSng_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5698148</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_3WUre99xyUmAtlM3gU49yA"
      decimals="0"
      id="Tc__0n0sLF16ESwsStW_IjYew_4_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5389361</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg"
      decimals="0"
      id="Tc_Q3Fnb_t7p0u-WhA5I6FMDA_5_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5855073</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw"
      decimals="0"
      id="Tc_EwUtirXXJUS3V6fXMGtCQw_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6202012</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_ekiKLPPPN0Sq-xNE9FPGlw"
      decimals="0"
      id="Tc_Zg0oFqrxhUeXtzf1Sxyp5w_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5742056</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_FuelOilMember_zsWawSRNeEq148hA6_fMFw"
      decimals="0"
      id="Tc_h-DcAxQ06UyikPfESXM3lg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">4157393</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA"
      decimals="0"
      id="Tc_5KBXuAtidkeXCO_egiWpFQ_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">12439042</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw"
      decimals="0"
      id="Tc_-wsW59dwQ0OmfpVTQQ-n6g_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">11465514</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_2_4xHWNyOUiRFJL1SiphTA"
      decimals="0"
      id="Tc_bE0RIAcoYk-ZXcjjWgTYCw_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2092776</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_MaintenanceMember_nIDwp5kSwEeLdwVBQnxtSg"
      decimals="0"
      id="Tc_AWOmmQtTGECqkHFd2Ne1Wg_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2859262</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_3Hk3LMrdnEC7vdv7eMSHzQ"
      decimals="0"
      id="Tc_mElq6Vfra0aSeHHKg45FRw_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1418820</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_RoyaltiesMember_8LyZFX58x0amUMmdq91b0A"
      decimals="0"
      id="Tc_A5NM_YZbTECmdTmQZnx1BA_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1489862</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw"
      decimals="0"
      id="Tc_UpiyN_H0MUS-4OzRCpfmYg_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1625862</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g"
      decimals="0"
      id="Tc_g8hIGiiyPEm4_pZcrTfi3Q_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1491799</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_U4ujjFBn80GNcRKr-wSbAA"
      decimals="0"
      id="Tc_YOZz7ggJTkCc2eMOUdQa0Q_11_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1952764</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_MaterialsMember_3fijKjtLP0i_W_LYAwWCGg"
      decimals="0"
      id="Tc_arce10jniUirK18IxTAROw_11_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5786698</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_ETZ4MiAHaEO58VZI3-61ZQ"
      decimals="0"
      id="Tc_paP0sFUgj06UuqT2b11dQQ_12_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">6531770</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_OtherExpenseMember_HftNJsdBOk67Xi6tf0YEYg"
      decimals="0"
      id="Tc_QAnCel16yEqNzYREEGCoCA_12_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7017770</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_a1hxQpz1tEaa2TQ5z2Ca2w_13_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">43356311</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_JMqJeaQuqkCXTOAzgJEH1w_13_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">45859671</us-gaap:CostOfRevenue>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA"
      decimals="0"
      id="Tc_AhunOaJMg0Wn4RvGdkCqvg_18_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9562125</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_GQuKzmt_X0mxS_keBD0Sfw"
      decimals="0"
      id="Tc_qfKO0v9Wxky2uMvB77bZXw_18_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10086588</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_ZEL_YBpgb0egmwuebA_Phw"
      decimals="0"
      id="Tc_WOAlFLHXQkGAMpJyv6O_PA_19_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1813026</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_InsuranceMember_bqai9wpz_EaY06rs6bx59g"
      decimals="0"
      id="Tc__wr_eWaho0uJ93H2tKdnxw_19_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1436957</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_7m6rF6Uj90mfuItIrE7hCw"
      decimals="0"
      id="Tc_XrWFTNSszkKb3jKlMMHRww_20_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1506423</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_ProfessionalsFeeMember_tNgqPSYlik-XMvXImeXynQ"
      decimals="0"
      id="Tc_ZK3K42QnxUC5X3UKsQMMKA_20_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1488948</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_pO4dE_fbskO9VXGI88UmsQ"
      decimals="0"
      id="Tc_ugSLWMECW02QpZapRZnKsw_21_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">851775</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DirectorsFeesAndExpensesMember_LzAYr8PnoUiHD4Lr9hwW5A"
      decimals="0"
      id="Tc_HR7Nj36mpUuNSbajmQYTPg_21_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">865555</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_0N7Itz8O2EG62MypAxGFLg"
      decimals="0"
      id="Tc_RuwtqBu5tEq9wPPf-xwDbg_22_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">140140</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_DepreciationMember_z_eRN8Ib9k2VszEwjY7Myw"
      decimals="0"
      id="Tc_jaLNsJkaeUa1wjfJP4QmAw_22_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">133477</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_Go8uayF_0kizBJckFytZnA"
      decimals="0"
      id="Tc_NbE0dmADPE6nN_pDIe-T2g_23_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">746667</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_AmortizationOfIntangiblesMember_kRpGDMpyNEGfm85XSOZKfQ"
      decimals="0"
      id="Tc_z9HV8X7K-UGmowV92nhSww_23_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">891667</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_TOitYhxwg0W68pJpwEjZ0g"
      decimals="0"
      id="Tc_ZXSk-zx0dk-Q1r4mXAc_Bg_24_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3730203</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_OtherCreditDeviceMember_pzf1TtXv7ESmfsKJZiTwGw"
      decimals="0"
      id="Tc_56gMumWVA0i8kjAVIOFypw_24_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3531706</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_VC5i0VlHakWYH5oL1ujT4Q_25_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18350359</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_uu_GIF8dAUyYZMhaq5Whgw_25_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">18434898</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_FTvEQKQO4E-QUzl4TbTynQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;16. Stock-based compensation&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has the following stock compensation plans that form part of its employees&#x2019; and Directors&#x2019; remuneration:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Employee Share Incentive Plan (Preferred Stock)&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Employees (i.e. other than Directors and Officers), after &lt;span style="-sec-ix-hidden:Hidden_YdM7dYC86EaCKfEKZM-B2w;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;four&lt;/span&gt;&lt;/span&gt; consecutive years of employment, become eligible to receive shares of the Company&#x2019;s preferred stock for &lt;span style="-sec-ix-hidden:Hidden_QN5hwaabf0iOIJGHKM6vcw;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;$nil&lt;/span&gt;&lt;/span&gt; consideration under its Employee Share Incentive Plan. Once an individual becomes eligible, these shares of preferred stock are awarded each subsequent year of the individual's employment (the grant date) for as long as the individual remains employed with the Company. If these employees remain with the Company through the fourth anniversary of a grant date, the preferred stock can be converted into shares of the Company&#x2019;s common stock on a one for one basis. In addition, at the time the preferred stock is granted, the employees receive options to purchase an equal number of shares of preferred stock at a discount to the average trading price of the Company&#x2019;s common stock for the first &lt;span style="-sec-ix-hidden:Hidden_Tlfe_TGKFk6q2QbewkdKDw;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;seven&#160;days&lt;/span&gt;&lt;/span&gt; of the October&#160;immediately preceding the date of the preferred stock grant. If these options are exercised, the shares of preferred stock obtained may also be converted to shares of common stock if the employee remains with the Company through the fourth anniversary of a grant (or option exercise) date. Each employee&#x2019;s option to purchase shares of preferred stock must be exercised within &lt;span style="-sec-ix-hidden:Hidden_wsvl4L0MzkWVVe1YTEyRYg;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;30&#160;days&lt;/span&gt;&lt;/span&gt; of the grant date, which is the 90th day after the date of the independent registered public accountants&#x2019; audit opinion on the Company&#x2019;s consolidated financial statements. Shares of preferred stock not subsequently converted to shares of common stock are redeemable only at the discretion of the Company. Shares of preferred stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 8,632 and 6,123, respectively, and an equal number of preferred stock options was granted in each of these&#160;years.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Employee Share Option Plan (Common Stock Options)&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has an employee stock option plan for certain long-serving employees of the Company. Under the plan, these employees are granted in each calendar&#160;year, as long as the employee is a participant in the Employee Share Incentive Plan, options to purchase common shares. The price at which the option may be exercised is the closing market price on the grant date, which is the 40th day after the date of the Company&#x2019;s Annual Shareholder Meeting. The number of options each employee is granted is equal to five times the sum of (i)&#160;the number of shares of preferred stock that employee receives for $nil consideration and (ii)&#160;the number of preferred stock options that employee exercises in that given&#160;year. Options may be exercised during the period commencing on the fourth anniversary of the grant date and ending on the thirtieth day after the fourth anniversary of the grant date. Options granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 3,400 and 2,100, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The fair value of each option award is estimated on the date of grant using a Black-Scholes option-pricing model that uses the assumptions noted in the table below. Expected volatilities are based on historical volatilities of the Company&#x2019;s common stock. The Company uses historical data to estimate option exercise and post-vesting termination behavior. The expected term of options granted is based on historical data and represents the period of time that options granted are expected to be outstanding. The Company uses historical data to estimate stock option exercises and forfeitures within its valuation model. The risk-free interest rate for the expected term of the option is based on the U.S. Treasury yield curve in effect at the time of the grant.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;2008 Equity Incentive Plan&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;On May&#160;14, 2008, the Company&#x2019;s stockholders approved the 2008 Equity Incentive Plan (the &#x201c;2008 Plan&#x201d;) and reserved 1,500,000 shares of the Company&#x2019;s Class&#160;A common shares for issuance under this plan. All Directors, executives and key employees of the Company or its affiliates are eligible for participation in the 2008 Plan which provides for the issuance of options, restricted stock and stock equivalents at the discretion of the Board.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Non-Executive Directors&#x2019; Share Plan&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;This stock grant plan provides part of Directors&#x2019; remuneration. Under this plan, non-Executive Directors receive a combination of cash and common stock for their participation in Board meetings. The number of shares of common stock granted is calculated based upon the market price of the Company&#x2019;s common stock on October&#160;1 of the&#160;year preceding the grant. Common stock granted under this plan during the&#160;years ended December&#160;31, 2021 and 2020 totaled 30,911 and 19,712 shares, respectively. The Company recognized stock-based compensation for these share grants of $319,002 and $318,991 for the&#160;years ended December&#160;31, 2021 and 2020, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company measures and recognizes compensation expense at fair value for all share-based payments, including stock options. Stock-based compensation for the Employee Share Incentive Plan, Employee Share Option Plan and the 2008 Equity Incentive Plan totaled $137,215 and $125,487 for the&#160;years ended December&#160;31, 2021 and 2020, respectively, and is included in general and administrative expenses in the accompanying consolidated statements of income.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The significant weighted average assumptions for the&#160;years ended December&#160;31, 2021 and 2020 were as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Risk free interest rate&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.20&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.17&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected option life (years)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1.1&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected volatility&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31.92&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 51.19&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected dividend yield&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.87&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.42&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;A summary of the Company&#x2019;s stock option activity for the&#160;year ended December&#160;31, 2021 is as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Weighted&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Weighted&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Remaining&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Exercise&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contractual&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Price&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Life&#160;(Years)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Value&#160;(1)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Outstanding at beginning of period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,030&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12.98&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Granted&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,032&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9.33&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Exercised&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,106)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8.10&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Forfeited/expired&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (9,466)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9.44&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Outstanding as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,490&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12.98&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.30&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;years&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Exercisable as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;years&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"&gt;&lt;div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;The intrinsic value of a stock option represents the amount by which the fair value of the underlying stock, measured by reference to the closing price of the common shares of &lt;/span&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;$10.64&lt;/span&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt; on the Nasdaq Global Select Market on December&#160;31, 2021, exceeds the exercise price of the option.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-top:12pt;"/&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December&#160;31, 2021, 10,490 non-vested options were outstanding, with weighted average exercise price of $12.98, and average remaining contractual life of 2.30&#160;years.&#160;The total remaining unrecognized compensation costs related to unvested stock-based arrangements were $16,554 as of December&#160;31, 2021 and are expected to be recognized over a weighted average period of 2.30&#160;years.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December&#160;31, 2021, unrecognized compensation costs relating to redeemable preferred stock rights outstanding were $147,074 and are expected to be recognized over a weighted average period of 1.17&#160;years.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table summarizes the weighted average fair value of options at the date of grant and the intrinsic value of options exercised during the years ended December 31, 2021 and 2020:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price below market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; preferred stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3.71&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.70&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3.71&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.70&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price at market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Management employees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; common stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.89&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.45&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.89&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.45&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price above market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Management employees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; preferred stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total intrinsic value of options exercised&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,876&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,891&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Executive Long-Term Incentive Compensation&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Board of Directors approved changes to the long-term incentive compensation for the Company&#x2019;s Executive Officers effective for 2015 and thereafter to better align the interests of its Executive Officers with those of its shareholders. The revised long-term compensation plan includes a combination of performance and non-performance-based grants of common stock from the shares of Company stock provided for issuance under the 2008 Equity Incentive Plan.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The non-performance-based stock grant rights, which are issued on January 1 of each year, vest in one-third increments at the end of each&#160;year over a three-year period. The number of non-performance-based stock grant rights issued on January &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;1, 2021 and 2020 were 26,403 and 23,458, respectively. These stock grant rights vest in one-third increments over the &lt;span style="-sec-ix-hidden:Hidden_FTMbIkzyt0eqy4QDdP_stg;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;three-year&lt;/span&gt;&lt;/span&gt; periods ending December 31, 2023 and 2022, respectively. The total number of vested shares issued under prior years&#x2019; non-performance stock grant rights totaled 25,789 and 28,891 in the years ended December 31, 2021 and 2020, respectively. For the&#160;years ended December&#160;31, 2021 and 2020, the Company recognized $306,250 and $344,940 in stock-based compensation expense, respectively, related to the incremental vesting of the non-performance stock grant rights.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The performance-based grants may be earned at the end of each&#160;year based upon the Company's three-year cumulative financial performance relative to three-year cumulative financial performance targets.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;A total of 18,419 stock grant rights were earned as of December&#160;31, 2021 based upon the Company&#x2019;s actual financial performance relative to the cumulative financial performance targets for the three-year period ended December 31, 2021, and the Company recognized $214,765 in stock-based compensation for the&#160;year ended December&#160;31, 2021 related to these grants. The shares associated with these grants will be issued in 2022.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;A total of 31,788 stock grant rights were earned as of December&#160;31, 2020 based upon the Company&#x2019;s actual financial performance relative to the cumulative financial performance targets for the &lt;span style="-sec-ix-hidden:Hidden_8mTRR9wXqkSZbjtKI0msDQ;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;three&lt;/span&gt;&lt;/span&gt;-year period ended December 31, 2020, and the Company recognized $373,843 in stock-based compensation for the&#160;year ended December&#160;31, 2020 related to these grants. The shares associated with these grants were issued in 2021.&lt;/p&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <cwco:StockholdersEquityNoteConversionRatioPreferredShares
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      decimals="INF"
      id="Narr_1p4NeEgV5keQfBKLBRBzjA"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">1</cwco:StockholdersEquityNoteConversionRatioPreferredShares>
    <cwco:StockholdersEquityNoteConversionRatioCommonShares
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      decimals="INF"
      id="Narr_XzYxjj-LlEeiEjUeJNt8aQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">1</cwco:StockholdersEquityNoteConversionRatioCommonShares>
    <us-gaap:StockIssuedDuringPeriodSharesIssuedForServices
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      decimals="INF"
      id="Narr_AUitcrBssUmRLr8pPQiPNg"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">8632</us-gaap:StockIssuedDuringPeriodSharesIssuedForServices>
    <us-gaap:StockIssuedDuringPeriodSharesIssuedForServices
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_SqK6sNa4l0aOaqplT-GdUg"
      decimals="INF"
      id="Narr_3YqU7ikKN0KS59-6VJgaqw"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">6123</us-gaap:StockIssuedDuringPeriodSharesIssuedForServices>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_uh0sxFbAEUq10pMjfSjzjA"
      decimals="INF"
      id="Narr_EhezZzuzqkuXnlULsSYNrw"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">3400</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_CommonStockOptionsMember_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_TddUvJ6Na02QRBQfN9PQfg"
      decimals="INF"
      id="Narr_Ia_BEvAvPEqh4m4pzB2DrQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">2100</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="As_Of_5_14_2008_us-gaap_OptionIndexedToIssuersEquityTypeAxis_cwco_EquityIncentivePlan2008Member_3Q0krjmaL0mpFVyAg2ZBgg"
      decimals="INF"
      id="Narr_4PY53eduFE-V5tTx9ccSwg"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">1500000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ"
      decimals="INF"
      id="Narr_RttAkf8bFk2fM-__BTe14Q"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">30911</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA"
      decimals="INF"
      id="Narr__90USECWskCo4CyOtP9n3w"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">19712</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_UqXQqjNwzky1jZAWblX9hQ"
      decimals="0"
      id="Narr_6L-45vBD1kWpbGMC7l7bvw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">319002</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonExecutiveDirectorsSharePlanMember_QJcEe8Yi70e02A2Ubm51lA"
      decimals="0"
      id="Narr_BRE9HIZcBUWOFRT-J9xDDQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">318991</us-gaap:ShareBasedCompensation>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_gXeIrDKvbEOh1lXKiOa71g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">137215</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_9syS3pN_fE-omkpjGHXiLA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">125487</us-gaap:AllocatedShareBasedCompensationExpenseNetOfTax>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_Q1Y2h7fHvEidQiSilsWJlw">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Risk free interest rate&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.20&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 0.17&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected option life (years)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1.1&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected volatility&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 31.92&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 51.19&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:77.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Expected dividend yield&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.87&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.76%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.42&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_eimfsM5n00yk2hUUcBSmGw_2_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0020</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_qeSGq2yAXUOjSZ8O6oxQ9g_2_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0017</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_H3ds7U8TgUi5N1sa8TepJA_3_2">P1Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      id="Tc_OdriqBIyukaUAunrIoqtHw_3_4">P1Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_cKVG_VfumE-ejUwQJjnnPA_4_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.3192</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_JWFxuua33kWGDgDC5Rxu6g_4_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.5119</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="4"
      id="Tc_4IR05QKO8US0HYgb_mzD_w_5_2"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0287</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="4"
      id="Tc_0EeYxToC9EuOQeE8KgXmOA_5_4"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.0242</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_RmY-9R_vYkmN1sVAljwZRg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;A summary of the Company&#x2019;s stock option activity for the&#160;year ended December&#160;31, 2021 is as follows:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Weighted&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Weighted&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Average&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Remaining&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Aggregate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Exercise&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contractual&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Intrinsic&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Price&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Life&#160;(Years)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:7.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Value&#160;(1)&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Outstanding at beginning of period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,030&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12.98&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Granted&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12,032&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9.33&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Exercised&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (2,106)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 8.10&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Forfeited/expired&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (9,466)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9.44&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Outstanding as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,490&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 12.98&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.30&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;years&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:59.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Exercisable as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.52%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;years&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"&gt;&lt;div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"/&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"&gt;&lt;tr&gt;&lt;td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"&gt;(1)&lt;/td&gt;&lt;td style="padding:0pt;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;The intrinsic value of a stock option represents the amount by which the fair value of the underlying stock, measured by reference to the closing price of the common shares of &lt;/span&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;$10.64&lt;/span&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt; on the Nasdaq Global Select Market on December&#160;31, 2021, exceeds the exercise price of the option.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="margin-top:12pt;"/&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="INF"
      id="Tc_pyhiqNPAfk2G-1KbxzDq0A_6_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">10030</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="2"
      id="Tc_SrHP2Qv0M0erbBFYOzoNLA_6_5"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">12.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Tc_7R4j9iOfUEav5fSks3KMxQ_7_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">12032</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_1k3nVr3k40qjQBGkzhnsew_7_5"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">9.33</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Tc_E5uGixH7S0ajYFfKHIXXGA_8_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">2106</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_5ih29pwRYkC9SUNIf1cung_8_5"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">8.10</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Tc_UlmRDBhCjUiHKgUflL41Ww_9_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">9466</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Tc_1hEb3TJTNkeUU-992A2PLw_9_5"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">9.44</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Tc_ozpAAa1Pz0-O3d9ESf18kw_10_2"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">10490</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="2"
      id="Tc_JA7MrKDwRUWTpGgCjAP03w_10_5"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">12.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tc_ptorDRilgEud922LUAievg_10_7">P2Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <cwco:ClosingPriceOfCommonShares
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Narr_x60_hWcJrE65YPBVUY0AnQ"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">10.64</cwco:ClosingPriceOfCommonShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="INF"
      id="Narr_FC1wEwO0GkaO7hjkYFdUUg"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">10490</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="2"
      id="Narr_T29YIUX1OEW8zLbAYXsO6g"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">12.98</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_EAu4ax8lSUOIzgiiDkJUwg">P2Y3M18D</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="As_Of_12_31_2021_us-gaap_OptionIndexedToIssuersEquityTypeAxis_us-gaap_EmployeeStockOptionMember_KsdVl-TcrE2EB_xPG1O7Kw"
      decimals="0"
      id="Narr_nEfDDfI25UG2c38j8AeJuQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16554</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Narr_u2hovjYzjk2DaCsDZJmyEw">P2Y3M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="As_Of_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_ePn0d7DfTEKxkcoMJx6Vgw"
      decimals="0"
      id="Narr_joJrat4cFUSjtn1N6CqhJw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">147074</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_hfwWF1uUzUG3ufkuO2P_xg"
      id="Narr__4AcG50c7UKxb13z_oOXYw">P1Y2M1D</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm>
    <us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb__4qmZ1dgHEuETVrkaNDxbg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price below market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; preferred stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3.71&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.70&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3.71&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.70&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price at market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Management employees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; common stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.89&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.45&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.89&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2.45&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Options granted with an exercise price above market price on the date of grant:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Management employees&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Employees &#x2014; preferred stock&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Overall weighted average&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:75.95%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Total intrinsic value of options exercised&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 7,876&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.09%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 3,891&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_eDN37ynhXkWzWlTmvuQp8w"
      decimals="2"
      id="Tc_grADwaYS5kuJ0RDoa9zm9w_3_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">3.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_iZPYwl2HZ02nexQzUx8a2A"
      decimals="2"
      id="Tc_mfBs54CHHUyL-WfJTRzUUA_3_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_MHksL3_4KUWwRcG0PTPHCQ"
      decimals="2"
      id="Tc_4c0z3hSOH0inQMfuGNn3hg_4_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">3.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_BelowMarketPriceMember_PmmGV0jAV0WsIRY0tKIu7g"
      decimals="2"
      id="Tc_2rcTwi7jfEmmymJV1xr1vQ_4_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.70</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_17--TX751keZOsfNqkcolA"
      decimals="0"
      id="Tc_fdz-FgtOTEKxuG7HvNrSSA_7_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_LI5h7HjgHUSEj_Q_th4x4g"
      decimals="0"
      id="Tc_Zn-pHLksw0-SHH9s2YUkrA_7_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_qesoc-vMc0isIqsmUe-XyA"
      decimals="2"
      id="Tc_E6HY_YuqKUuvFzyJjtYNng_8_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_WLmUs0F_OkSgBJDKkXD0HQ"
      decimals="2"
      id="Tc_vSrprIPrmEqbdowlxdps-Q_8_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_btVR53m-jUGESeOtljKk4Q"
      decimals="2"
      id="Tc_-Cs9rkD11ku3qfy3cg2leg_9_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AtMarketPriceMember_JIdK-cug7EGsXkUkbWQ3WQ"
      decimals="2"
      id="Tc_6M6Su6IosUqTq0h733O36g_9_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">2.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_3SIn1N2pn0mCFJlU7bK--g"
      decimals="0"
      id="Tc_YuLB8fZ0MEezSmHP0f9_MQ_12_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_ManagementEmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_0ptnBVw1S0WnjglpvuTvYQ"
      decimals="0"
      id="Tc_v3VFkYkGzkO66Mn1hqADVg_12_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_duu6DiK0skaZSCkjVOc2Sw"
      decimals="0"
      id="Tc_ObQcPxj7lU2A8eDF20uuwA_13_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_srt_TitleOfIndividualAxis_cwco_EmployeesMember_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_mV1UvFExFEeWFRyR2eypCw"
      decimals="0"
      id="Tc_x2WAE5I2LU2vr3LcX42Ivw_13_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_X205sNsqy0G5w-LA4lrbDQ"
      decimals="0"
      id="Tc_9upnQEQSJEaZpmV_qB1iRw_14_3"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_cwco_AboveMarketPriceMember_u9N7H5fmh0KZlJkCM3eR1Q"
      decimals="0"
      id="Tc_6-TOaz7gnkm7pRbzi41p8Q_14_6"
      unitRef="Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_0oek9PssrEikXPIM06Oieg_16_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">7876</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_buMZwc23oUW99brBnVbX0w_16_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3891</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      id="Narr_YU9i5Tvql0CSpc2lxMmk6g">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      decimals="INF"
      id="Narr_S1Gu4NZpwU6HmET72gBVbQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">26403</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ"
      decimals="INF"
      id="Narr_ssdbukT2l0WuhXAfBAA2ug"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">23458</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      decimals="INF"
      id="Narr_o-huwooDuEOQVFB2jjWQag"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">25789</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ"
      decimals="INF"
      id="Narr_TVdRksWbNE26FQDBkmACBQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">28891</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensation>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      decimals="0"
      id="Narr_v1lJ9c8pUU6kVcrS0y-gwQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">306250</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_6snTABQixEGUXFs7rUD7tQ"
      decimals="0"
      id="Narr_0X0yR4Y7RkGe99wC7nJliA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">344940</us-gaap:AllocatedShareBasedCompensationExpense>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      id="Narr_4zGr0s38HUmm3BbNXIBh7w">P3Y</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_NonperformancebasedGrantsMember_R7ncbi0pl06e1POlE-6xCw"
      id="Narr_JgdQiPI2Sk-owOrcE-4C6A">P3Y</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A"
      decimals="INF"
      id="Narr_PcerjDRhyU6ddlGyeUqUFQ"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">18419</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A"
      id="Narr_Mxx0tjNV206EKmxGeFfjfw">P3Y</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_j_usGUTzr0Gc1utl5ul99A"
      decimals="0"
      id="Narr_wq6BfpZ7zEiNZxhUGd3HUQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">214765</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw"
      decimals="INF"
      id="Narr_LhLBHsxQJEeGE5SDLIUFEA"
      unitRef="Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ">31788</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      id="Narr_xexvbQKzR0OWVL3uO8PAyw">P3Y</cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_AwardTypeAxis_cwco_PerformancebasedGrantsMember_OAJVNKXTOEa7RgWeKUSnNw"
      decimals="0"
      id="Narr_olzoL_yyiUSw_VjZMr9zjg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">373843</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_FoVpqSjATEKOrHH7-CtDiQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;17. Retirement benefits&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Retirement plans are offered to all employees in California, Florida, Cayman Islands and Bahamas. The plans are administered by third parties and are defined contribution plans pursuant to which the Company matches participating employees&#x2019; contributions up to certain amounts. The Company matches contributions of up to 5% of a maximum salary amount of $104,400 for Cayman Islands employees, fully matches all contributions made by employees in the Bahamas, and matches contributions of up to&#160;6% of salary for Florida employees. For California employees, the Company matches contribution amounts up to 2% of the employee's salary and matches 25% of contributions above this 2% threshold, up to 10% of the employee&#x2019;s salary. The Company&#x2019;s expense for these plans was $584,278 and $576,096 for the years ended December 31, 2021 and 2020, respectively.&lt;/p&gt;</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ"
      decimals="4"
      id="Narr_eyrlaDcW90CLWSOINIpnog"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.05</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_country_KY_XupJSQ8mj06Lamco5Qe7YQ"
      decimals="0"
      id="Narr_VvorOeyfOkynF7KFjIB5GQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">104400</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_FL_vVakg1b1O0aRtqSi86JVnQ"
      decimals="2"
      id="Narr_OIrqPSwTG0SrrqK42-eCAA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.06</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw"
      decimals="2"
      id="Narr_t5MLGZfl3E-cy6WBe-DNRg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.02</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_jKEZmTVO80GP5Fl_jTaGjA"
      decimals="2"
      id="Narr_5n_bHzsG8ES1bw0TwiHvVg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.25</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_RetirementPlanAxis_stpr_CA_VkwJesHsA0yy5t6SU7K7bw"
      decimals="2"
      id="Narr_0KwMpSwMTEeE0sdnusKZ1A"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.02</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="Duration_1_1_2021_To_12_31_2021_cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis_cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember_cwco_RetirementPlanAxis_stpr_CA_srt_RangeAxis_srt_MaximumMember_5UnaWkFxXUaiqbEuHv1xVQ"
      decimals="2"
      id="Narr_J5TE5AUmckeUIxi7NdaKQA"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.10</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:PensionExpense
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Narr_oVtCt0jBY0mlT0C50Dm35Q"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">584278</us-gaap:PensionExpense>
    <us-gaap:PensionExpense
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Narr_KlQ5x2iizEiS-lcEtIqmgw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">576096</us-gaap:PensionExpense>
    <us-gaap:FinancialInstrumentsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_3rq_T-zF8keXxgsmFdlwKg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;18. Financial instruments&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Credit risk:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company is not exposed to significant credit risk on its retail customer accounts as its policy is to cease supply of water to customers&#x2019; accounts that are more than &lt;span style="-sec-ix-hidden:Hidden_odlCgAb2tkGuHko8GsFcGA;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;45&#160;days&lt;/span&gt;&lt;/span&gt; overdue. The Company&#x2019;s exposure to credit risk is concentrated on receivables from its bulk water, services, and manufacturing customers. The Company considers these receivables fully collectible and therefore has not recorded an allowance for these receivables.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Interest rate risk:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company is not subject to significant interest-rate risk arising from fluctuations in interest rates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Foreign exchange risk:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;All relevant foreign currencies other than the Mexican peso and the euro have been fixed to the dollar for more than &lt;span style="-sec-ix-hidden:Hidden_bdKxU7g9K0WrA2yhp7tZlw;"&gt;&lt;span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"&gt;20&#160;years&lt;/span&gt;&lt;/span&gt; and as a result, the Company does not employ a hedging strategy against exchange rate risk associated with the reporting in dollars. If any of these fixed exchange rates becomes a floating exchange rate or if any of the foreign currencies in which the Company conducts business depreciate significantly against the dollar, the Company&#x2019;s consolidated results of operations could be adversely affected.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Fair values:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;As of December&#160;31, 2021 and 2020, the carrying amounts of cash equivalents, accounts receivable, accounts payable, accrued expenses, accrued compensation, dividends payable and other current liabilities approximate their fair values due to the short-term maturities of these instruments.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Under US GAAP, fair value is defined as the exit price, or the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants as of the measurement date. US GAAP guidance also establishes a hierarchy for inputs used in measuring fair value that maximizes the use of observable inputs and minimizes the use of unobservable inputs by requiring that the most observable inputs be used when available. Observable inputs are inputs market participants would use in valuing the asset or liability and are developed based on market data obtained from sources independent of the Company. Unobservable inputs are inputs that reflect the Company&#x2019;s assumptions about the factors market participants would use in valuing the asset or liability. The guidance establishes three levels of inputs that may be used to measure fair value:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;"&gt;Level 1&#160;- Quoted prices in active markets for identical assets or liabilities.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;"&gt;Level 2&#160;- Inputs other than Level&#160;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;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-left:36pt;text-align:justify;text-indent:-36pt;margin:0pt 0pt 12pt 54pt;"&gt;Level 3&#160;- Unobservable inputs that are supported by little or no market activity and that are significant to the fair value of the assets or liabilities.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;Assets and liabilities are classified in their entirety based on the lowest level of input that is significant to the fair value measurements. The Company reviews its fair value hierarchy classifications on a quarterly basis. Changes in the observability of valuation inputs may result in a reclassification of levels for certain securities within the fair value hierarchy.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The following table presents the Company&#x2019;s fair value hierarchy for assets and liabilities measured at fair value as of December&#160;31, 2021 and 2020:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Recurring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Certificate of deposit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,500,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,500,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Net asset arising from put/call options&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Recurring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Net liability arising from put/call options&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The activity for the Level 3 asset for the&#160;year ended December&#160;31, 2021:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net (liability)/asset arising from put/call options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Balance as of December&#160;31,&#160;2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Unrealized gain&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 818,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Balance as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;Put/call options are reported at fair value as either assets or liabilities in the consolidated balance sheets. These fair values are calculated using discounted cash flow analysis valuation techniques that incorporate unobservable inputs, such as future cash flows, weighted-average cost of capital, and expected future volatility. The inputs to these valuations are considered Level 3 inputs.&lt;/p&gt;</us-gaap:FinancialInstrumentsDisclosureTextBlock>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_GhCVFJcv1UayRdthfa_8gg">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"&gt;Recurring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Certificate of deposit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,500,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 2,500,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Net asset arising from put/call options&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December&#160;31,&#160;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities:&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Recurring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:53.51%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;"&gt;Net liability arising from put/call options&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.32%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_x5jvKJPM5kyNOvCafquv3A"
      decimals="0"
      id="Tc_9gAbaBEvHkqLscWyV1kQ5w_5_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2021_us-gaap_FairValueByAssetClassAxis_us-gaap_CertificatesOfDepositMember_2DtZn0YcmUuWeIvU518cjA"
      decimals="0"
      id="Tc_JRYIqtluBEC2wB32HKSnJA_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">2500000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2021_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Xu56YY7wuUuQ4iEUJyq88Q"
      decimals="0"
      id="Tc_vKkQgyRKm0y_SR1-Obr0-w_6_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">128000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Hr2L3tE5LkKrGCjwHCIhxw_6_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">128000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_12_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Muen2zsr-ESASfWfylZ8cg"
      decimals="0"
      id="Tc_orNCOB0Bz0CLpY1HTvGuuA_5_9"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">690000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_dQY5ZveCYE6_AIKdAUd9Tw_5_12"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">690000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_INHhZxJ76Uy8cdRfZirD9g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Net (liability)/asset arising from put/call options&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Balance as of December&#160;31,&#160;2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt; (690,000)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Unrealized gain&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 818,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:84.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Balance as of December&#160;31,&#160;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.69%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 128,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_QCWw2JcE4EWa7A6ICIit2g_2_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">-690000</us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs>
    <us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_YTgsoKYR_k-UeVIi_CIIpQ_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">818000</us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings>
    <us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_Ae9LAYABokysNjy-jA-SvQ_4_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">128000</us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_yzfp2KmINUi0XAUbAHUdYA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;19. Commitments and contingencies&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Commitments&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has entered into employment agreements with certain executives, which expire through December&#160;31, 2024 and provide for, among other things, base annual salaries in an aggregate amount of approximately $3.9 million, performance bonuses and various employee benefits.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company has purchase obligations totaling approximately $5.1 million through December 31, 2022.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;padding-bottom:12pt;margin:0pt;"&gt;Contingencies&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;&lt;i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;COVID-19&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:10pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;The worldwide coronavirus (COVID-19) pandemic was formally recognized by the World Health Organization on March 11, 2020. In response to this pandemic, the governments of the countries in which the Company operates - the Cayman Islands, The Bahamas, and the United States - implemented preventative measures to slow the spread of COVID-19, measures which have had profound adverse consequences for the economies of those countries. Tourism, a major economic driver for the Cayman Islands, temporarily ceased due to closing of the country to tourist arrivals by air and sea travel and has yet to return to pre-pandemic levels. Tourist arrivals to The Bahamas by air and sea also declined significantly due to the pandemic and continue to be less than pre-pandemic numbers due to the continued reluctance of people to travel internationally. Overall economic activity in the United States has also declined.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;As a result of the impact of the COVID-19 pandemic on the economies of the countries in which the Company operates, the Company has experienced, and could continue to experience, decreases in consolidated revenue, cash flows generated from operations, net income and overall liquidity as compared to pre-pandemic periods.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;Furthermore, the prolonged extension of the economic downturn created by the COVID-19 pandemic could further adversely affect the markets for the Company&#x2019;s products and services. Such adverse market effects could further adversely impact the Company&#x2019;s expected future cash flows from its four reporting units and could require the Company to record impairment losses to reduce the carrying values of one or more of these reporting units due to a decline in their fair values.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;padding-bottom:12pt;text-align:justify;background:#ffffff;margin:0pt;"&gt;Although the Company cannot presently quantify the future financial impacts of the COVID-19 pandemic, such impacts will likely continue to have a material adverse impact on the Company&#x2019;s consolidated financial condition, results of operations, and cash flows. Given the uncertainty associated with the resolution of this pandemic, the Company cannot presently determine how long such adverse financial impacts may last.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;background:#ffffff;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="font-style:italic;text-decoration-color:#000000;text-decoration-line:underline;text-decoration-style:solid;"&gt;Cayman Water&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company sells water through its retail operations under a license issued in July 1990 by the Cayman Islands government (the &#x201c;1990 license&#x201d;) that granted Cayman Water the exclusive right to provide potable water to customers within its licensed service area. Although the 1990 license was not expressly extended after January 2018, the Company continues to supply water under the terms of the 1990 license, as further discussed in the following paragraph. Pursuant to the 1990 license, Cayman Water has the exclusive right to produce potable water and distribute it by pipeline to its licensed service area, which consists of two of the three most populated areas of Grand Cayman Island: Seven Mile Beach and West Bay. In 2021 and 2020, the Company generated approximately 33% and 32%, respectively, of its consolidated revenue and 47% and 44%, respectively, of its consolidated gross profit from the retail water operations conducted under the 1990 license.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The 1990 license was originally scheduled to expire in July 2010 but was extended several times by the Cayman Islands government in order to provide the parties with additional time to negotiate the terms of a new license agreement. The most recent express extension of the 1990 license expired on January 31, 2018. The Company continues to operate under the terms of the 1990 license, providing water services to the level and quality specified in the 1990 license and in accordance with its understanding of its legal obligations, treating those obligations set forth in the 1990 license as operative notwithstanding the expiration of the express extension. The Company continues to pay the royalty required under the 1990 license.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;In October&#160;2016, the Government of the Cayman Islands passed legislation which created a new utilities regulation and competition office (&#x201c;OfReg&#x201d;). OfReg is an independent and accountable regulatory body with a view of protecting the rights of consumers, encouraging affordable utility services and promoting competition. OfReg, which began operations in January&#160;2017, has the ability to supervise, monitor and regulate multiple utility undertakings and markets. Supplemental legislation was passed by the Government of the Cayman Islands in April&#160;2017, which transferred responsibility for the economic regulation of the water utility sector and the negotiations with the Company for a new retail license from the WAC to OfReg in May&#160;2017. The Company began license negotiations with OfReg in July&#160;2017 and such negotiations are ongoing. The Company has been informed during its retail license negotiations, both by OfReg and its predecessor in these negotiations, that the Cayman Islands government seeks to restructure the terms of its license in a manner that could significantly reduce the operating income and cash flows the Company has historically generated from its retail license.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company is presently unable to determine what impact the resolution of its retail license negotiations will have on its cash flows, financial condition or results of operations but such resolution could result in a material reduction (or the loss) of the operating income and cash flows the Company has historically generated from Cayman Water&#x2019;s retail operations and could require the Company to record impairment losses to reduce the carrying values of its retail segment assets. Such impairment losses could have a material adverse impact on the Company&#x2019;s consolidated financial condition and results of operations.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;"&gt;&lt;i style="text-decoration-line:underline;text-decoration-style:solid;"&gt;CW-Bahamas&lt;/i&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;CW-Bahamas&#x2019; accounts receivable balances (including accrued interest) due from the WSC amounted to $21.5 million and $16.8 million as of December 31, 2021 and 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;From time to time (including presently), CW-Bahamas has experienced delays in collecting its accounts receivable from the WSC. When these delays occur, the Company holds discussions and meetings with representatives of the WSC and The Bahamas government, and as a result, payment schedules are developed for WSC&#x2019;s delinquent accounts receivable. All previous delinquent accounts receivable from the WSC, including accrued interest thereon, were eventually paid in full. Based upon this payment history, CW-Bahamas has never been required to provide an allowance for doubtful accounts for any of its accounts receivable, despite the periodic accumulation of significant delinquent balances. As of December 31, 2021, the Company has not provided an allowance for doubtful accounts for CW-Bahamas&#x2019; accounts receivable from the WSC. The Bahamas government and the WSC continue to make intermittent payments on these accounts receivable, and such payments amounted to approximately $22.9 million for the year ended December 31,&#160;2021.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;span style="font-weight:normal;"&gt;If CW-Bahamas continues to be unable to collect a significant portion of its delinquent accounts receivable, one or more of the following events may occur: (i)&#160;CW-Bahamas may not have sufficient liquidity to meet its obligations; (ii)&#160;the Company may be required to cease the recognition of revenue on CW-Bahamas&#x2019; water supply agreements with the WSC; and (iii)&#160;the Company may be required to provide an allowance for doubtful accounts for CW-Bahamas&#x2019; accounts receivable. Any of these events could have a material adverse impact on the Company&#x2019;s consolidated financial condition, results of operations, and cash flows.&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <cwco:EmploymentAgreementBaseAnnualSalaries
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="-5"
      id="Narr_MH2c8DfrwkOogIHpNf_x6g"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">3900000</cwco:EmploymentAgreementBaseAnnualSalaries>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="-5"
      id="Narr_Clfkpwb3ekeZRaqw8I6WEQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">5100000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:NumberOfReportingUnits
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="INF"
      id="Narr_3aU0TQ4Rk0ib68UT8Y7vcw"
      unitRef="Unit_Standard_item_q9VGVy0HoU-6ARV1IfDU3A">4</us-gaap:NumberOfReportingUnits>
    <cwco:CaymanWaterRetailOperationsPercentageOfRevenue
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Narr_t7Tpuy6mdUq8eiIxs4S_kQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.33</cwco:CaymanWaterRetailOperationsPercentageOfRevenue>
    <cwco:CaymanWaterRetailOperationsPercentageOfRevenue
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Narr_n91kbu9f4k-sgebshqbdpg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.32</cwco:CaymanWaterRetailOperationsPercentageOfRevenue>
    <cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="2"
      id="Narr_RI7bkfnCXUyaIn_gVtq4yg"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.47</cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit>
    <cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="2"
      id="Narr_RANFrBorp0e9RVIk3YGkcQ"
      unitRef="Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA">0.44</cwco:CaymanWaterRetailOperationsPercentageOfGrossProfit>
    <us-gaap:AccountsReceivableNet
      contextRef="As_Of_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_0UrMNm_IgE20WJPYFn3V2Q"
      decimals="-5"
      id="Narr_oiVg1xoIIU-nXXBvTHlvig"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">21500000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="As_Of_12_31_2020_srt_MajorCustomersAxis_cwco_WSCMember_NAQlDRECXky4oRc5QZd7lg"
      decimals="-5"
      id="Narr_YX739ncXxkSRag9HfmI_bw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">16800000</us-gaap:AccountsReceivableNet>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Duration_1_1_2021_To_12_31_2021_srt_MajorCustomersAxis_cwco_WSCMember_FG065aqhNESf5l2w1wZLgg"
      decimals="-5"
      id="Narr_27NcgFwtC0iZUpLcfYgwrA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">22900000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_GfdS9kfXFk--Igt6dyIAeQ">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;20. Related party transactions&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The Company, through PERC and the services segment, purchases engineering and technology support services from various companies with a minority shareholder who is also a minority shareholder of PERC. During the years ended December 31, 2021 and 2020, the Company made total purchases of services of approximately $438,000 and $1,349,000 &lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;from these companies, respectively. These total purchases are included in the Company&#x2019;s cost of revenue in the accompanying consolidated statements of &lt;span style="background:#ffffff;"&gt;income&lt;/span&gt;.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;On February 1, 2021, PERC entered into a sublease agreement with a related company commencing March 14, 2021 and ending August 31, 2021. This lease has been extended on a month-to-month basis subsequent to August 31, 2021. During the year ended December 31,&#160;2021, the Company recognized approximately $77,000 of expense related to this lease. This lease amount is included in the Company's general and administrative expenses in the accompanying consolidated statements of income.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;The total amount of accounts payable outstanding to these companies as of December 31, 2021 and 2020, was approximately $164,000 and $201,000, respectively.&lt;/p&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q"
      decimals="0"
      id="Narr_WlNDh4mjjkm0ySB9dfUnIg"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">438000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty
      contextRef="Duration_1_1_2020_To_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rvqLB_HJpUewumqfdV2Nsw"
      decimals="0"
      id="Narr_m7q4tSAagEukzCGovNv9vw"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1349000</us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty>
    <us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty
      contextRef="Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q"
      decimals="0"
      id="Narr_XOIdQ1AAU0y9Gwc66YJBeA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">77000</us-gaap:RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="As_Of_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_rOFFYC2JR06pIy16OuiGlQ"
      decimals="0"
      id="Narr_OotvpLUfY0uqkwtE4lLZmQ"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">164000</us-gaap:AccountsPayableRelatedPartiesCurrent>
    <us-gaap:AccountsPayableRelatedPartiesCurrent
      contextRef="As_Of_12_31_2020_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_EWXiKUL8zEWQaZQF2E-9Qg"
      decimals="0"
      id="Narr_5D4CqYzEyk6QpjJVyJ7QTA"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">201000</us-gaap:AccountsPayableRelatedPartiesCurrent>
    <us-gaap:CashFlowSupplementalDisclosuresTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_TnVpA0Quf0SlXLOe_F7IbA">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt;"&gt;21. Supplemental disclosure of cash flow information&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Interest paid in cash&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,248&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,669&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-cash transactions:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Dividends declared but not paid&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,298,148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,289,854&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Transfers from inventory to property, plant and equipment and construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 189,924&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 73,464&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Transfers from construction in progress to property, plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 644,224&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,653,501&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Right-of-use assets obtained in exchange for new operating lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,852,608&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 299,992&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Purchases of equipment through issuance of long-term debt&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 95,707&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 122,292&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="color:#70ad47;font-size:1pt;margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:CashFlowSupplementalDisclosuresTextBlock>
    <cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_YljqG9dxOECv9cuma7aL_g">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;&lt;span style="margin-bottom:12pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:0pt;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:26.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December&#160;31,&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2021&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Interest paid in cash&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 10,248&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 9,669&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Non-cash transactions:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"&gt;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Dividends declared but not paid&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,298,148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,289,854&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Transfers from inventory to property, plant and equipment and construction in progress&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 189,924&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 73,464&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Transfers from construction in progress to property, plant and equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 644,224&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,653,501&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Right-of-use assets obtained in exchange for new operating lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 1,852,608&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;background:#cceeff;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 299,992&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;Purchases of equipment through issuance of long-term debt&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 95,707&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.42%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"&gt; 122,292&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation>
    <us-gaap:InterestPaidNet
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_jYJCcePEO0eF_Qs-F_c25Q_3_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">10248</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_53dSuzSBBEycY_pz6GL5sw_3_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">9669</us-gaap:InterestPaidNet>
    <us-gaap:DividendsPayableCurrentAndNoncurrent
      contextRef="As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg"
      decimals="0"
      id="Tc_mqxyiEzWQkCRtTHNzeaQig_6_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1298148</us-gaap:DividendsPayableCurrentAndNoncurrent>
    <us-gaap:DividendsPayableCurrentAndNoncurrent
      contextRef="As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg"
      decimals="0"
      id="Tc_ca0G0XTHeE-hdXHYvvLlAg_6_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1289854</us-gaap:DividendsPayableCurrentAndNoncurrent>
    <cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_r37xHkgBAUC-un6LjGMn3g_7_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">189924</cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment>
    <cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_Y1BaC0SB8UiZMB60FdRyrg_7_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">73464</cwco:TransfersBetweenInventoryAndPropertyPlantAndEquipment>
    <cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_lgbCkKLkpki4hUL9biRyoA_8_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">644224</cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet>
    <cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_O74b8RFvuUqbSpk_gLubYA_8_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1653501</cwco:NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_8aeXmfrxu0-67UeJIKRHQw_9_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">1852608</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_YtW0zQj9a0W--EF3agXm9w_9_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">299992</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      decimals="0"
      id="Tc_GyPTTwadgEq_6WgbTStvtQ_10_3"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">95707</us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction>
    <us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction
      contextRef="Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA"
      decimals="0"
      id="Tc_WHTNtI5pLUyvVHbmgdQhCw_10_6"
      unitRef="Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg">122292</us-gaap:DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_HGOSI3h57E2yva1I_lnLew">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;22. Impact of recent accounting standards&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;Adoption of New Accounting Standards:&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;None.&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Effect of newly issued but not yet effective accounting standards:&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"&gt;In March 2020, the FASB issued ASU No. 2020-04, Reference Rate Reform (Topic 848), which provides optional expedients and exceptions to the current guidance on contract modifications and hedging relationships to ease the financial reporting burdens of the expected market transition from LIBOR and other interbank offered rates to alternative reference rates. The guidance was effective upon issuance and may be applied prospectively to contract modifications made and hedging relationships entered into or evaluated on or before December 31, 2022. The Company is currently evaluating the impact of the new guidance on the consolidated financial statements, however the adoption of this standard is not expected to have a material impact on the Company&#x2019;s consolidated financial position, results of operations or cash flows.&lt;/p&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg"
      id="Tb_bHh_UAVSYUaRuZ7JjhcIug">&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;"&gt;23. Subsequent events&lt;/p&gt;&lt;p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"&gt;The Company evaluated subsequent events through the time of the filing of its Annual Report on Form&#160;10-K. Other than as disclosed in these consolidated financial statements, the Company is not aware of any significant events that occurred subsequent to the balance sheet date but prior to the filing of this report that would have a material impact on its consolidated financial statements.&lt;/p&gt;</us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>114
<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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
M>'D^?]QW2L"0YB7#'.T,#]2RG5J65BNUJ>_K165DINXARM>JKTU(ZC@/WU-
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
MD =!@#P,:YMSK/,'47I)N"$+ P0C?#!8G[).'F*[/C10YJJ'UF/O[D7U_<0
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
M<-F^,=A^J.6A>>EN+>M:[IO+G8BA2U,"\/M&ROKI@YJ@?V_SXG]02P,$%
M  @ LXE]5'#.*.J( P  _P<  !@   !X;"]W;W)K<VAE971S+W-H965T."YX
M;6RE55&/VS8,_BN$!PP;D,:)[[K>VB1 DVYH@14X]-;V6;$9FZ@L>9*<-/OU
M(R7'26[M/6POB461G[Z/I*C%P;HOOD$,\+75QB^S)H3N99[[LL%6^:GMT/#.
MSKI6!5ZZ.O>=0U7%H%;GQ6SV2]XJ,MEJ$6WW;K6P?=!D\-Z![]M6N>,:M3TL
MLWEV,GR@N@EBR%>+3M7X@.%C=^]XE8\H%;5H/%D##G?+[/7\Y?I6_*/#)\*#
MO_@&4;*U]HLLWE7+;":$4&,9!$'QWQXWJ+4 ,8V_!LQL/%("+[]/Z+]'[:QE
MJSQNK/Y,56B6V5T&%>Y4K\,'>WB+@Y[G@E=:[>,O')+O_-<,RMX'VP[!S* E
MD_[5UR$/%P%WL^\$%$- $7FG@R++-RJHU<+9 SCQ9C3YB%)C-),C(T5Y"(YW
MB>/"ZMZ1*:E3.N6'PG&1!\:5W;P<,-8)H_@.QKR ]]:$QL-OIL+J&B!G0B.K
MXL1J73R)^ ;+*=S,)U#,BOD3>#>CRIN(=_,?55Z!WHZ@MQ'T]G^E[FF,^13^
M#0,;:[S55*F %7SF7\>F*?P1JBDH4P$%S[=HZZDBY0@]_,1M$/M\C_HX@= @
M_/C#75',7FULVRESC*OYJY\YK.OT$3H;U%8C' 2< _@^A[0 ONA\VWJ/\:C.
MV3U5@^,SASIR8FO5E\Q"7#RZ/97,(MBA8]%Y(!-I;-2Q50;>><VN?@)_LFVM
M&L63)?'\:$@0'P(#)SRQKAT%\@U\(E?3&#Z-X8.D@00'78F!G;,M<U)IU7LR
M->O9,R<$ZUOKB9EBV1BK;7T<%&C-QH9W4A0K4;"7W'(U[.XL:\*Z2MU7 MKU
M6TTE]($TDT7>*VW+3B5)+46([1WY($0[=,G%(5<-31"?LSVZUY9)&AYX 7:J
M'$"O)5<<71N&V?:D*W]!/O$>ZA+''6\-8J2X$9;,SBD?'+OT+M67B\.S]Q3_
MR$%:X9&F,TDVC&FY9JFTMP+<LPS!89XRU1"<,C5*/GV'@DA_<^4%-0&-)"I>
MNB-\L]N&AO1#+B: ACL$D6]1/0%)J I2'?&UW$KNW)^*6Y_*V"K2JJ.P";2]
MH>$.RO5*!$3RX[1.3A<HUO>4V.FWIDE^,93YH#H^/9Z/[4U(\WFTCJ_;ZS34
MS^[I:7ROY!9XT+CCT-GTQ?,,7'INTB+8+H[XK0V<Q_C9\ N-3AQX?V=M."WD
M@/'-7_T#4$L#!!0    ( +.)?52;$"F@0Q4  )M$   8    >&PO=V]R:W-H
M965T<R]S:&5E=#DN>&ULS5QI<]M&TOXK4WKM-TD51)'4:<5VE:1X=Y-*UB[+
MB6L_#H$A.1&(03" *.ZOWS[F @G*5IQD]T-B$IRCNZ>/IWL:>KDVS9U=*M6*
MAU59V5<'R[:M+X^.;+Y4*VE'IE85_#(WS4JV\+59'-FZ4;*@2:OR:#H>GQVM
MI*X.7K^D9^^:UR]-UY:Z4N\:8;O52C:;:U6:]:N#R8%_\%XOEBT^.'K]LI8+
M=:O:G^MW#7P["JL4>J4JJTTE&C5_=7 UN;P^P?$TX!>MUC;Y+)"3F3%W^.7[
MXM7!& E2I<I;7$'"/_?J1I4E+@1D_.;6/ A;XL3TLU_];\0[\#*35MV8\J,N
MVN6K@XL#4:BY[,KVO5G_0SE^3G&]W)26_B_6/'8Z/A!Y9UNS<I.!@I6N^%_Y
MX.203+C8-V'J)DR);MZ(J/Q.MO+UR\:L18.C837\0*S2;"!.5W@HMVT#OVJ8
MU[Z^RG/35:VN%J(VI<ZULB^/6E@8?S[*W2+7O,ATSR*3J?C)5.W2BC=5H8K^
M D= 42!KZLFZGCZZXG<J'XGC22:FX^GDD?6. YO'M-[Q[V6SM^I)6/6$5CWY
M,N$]OLAT) ;6$=?2:BO,7("MU;*1J,.7XF>K\)FRK0:-5/8RCLM-96%RX4:^
MK<0/LNK T,3TA.0XSH2T0H(I65!9G'+S\? ?IBQ@7_N54 ^JR36O+T4NRU*8
M&M?*TG&B[II\"690B':I8"TT?"3\Y,5S8=:5:NQ2UT)7K8)]6O@@KN#3@P#_
M(9Y=9*?C<38>C_%Y+NT2>)_#2+'0][B(FL_!6D5K8'$=]^I3 +M8,1F/GR.E
M2 3X&MO*"G^%16O=RE* X>1W.(!V'Z$XKKH%V).83+PTAMF2X"J*0B/GL,XD
MV29P!P_>O7E_PSR]<!QEP%,.?M$B&;JU_?'$C^UF5A<:SP18/)L\%R,!O@4\
M!TBC:QI5Y9M+<0-R 2H*$I!0OW7Z7I:J:N&P88>R*Y1X=CXZ 6]0EN388.BS
MB]&I?Y#A"=>*W%VYR4@W5-/JN<Y19?![H6ICD<:U;G$O81J]T,@O:%77Z';#
M-#=*B15;-K!:*FOAP&@%,%"UFL')>2/-2$8W9E7+:B.6LHB;P%G_/+H=@?>L
M[NB;>LAA*5QFK@K5@*IMX+'M&A!_J5<D/%#"NF[, ^DY_ XL7W@./Y<(53HA
MPIYS)V<D F(!&=S0-L?'HTF4Y'JI\Z47.QK/LVD4="K61*J/"]7J!R?2D;B!
M^6 ^HFUD9>>@+&+>F%7*P___W\5T<OXMNH.EA&B\13YHD6>V_P,L:F"91M#W
M!AU*@YK4*%J=> :M\JI] ^H%QP"[5&0T'^"9V_$3LH[J*7ZN= L'>-N2EA6F
M+&7#XI_)4E9PY&0P02WH>(#09#.Q!FO=/I&SJ.O!52([N8*=9Z4B P =,FO<
MA/<PW:R==V40R*7XT$@P'#DTO;0&OH.?M<B&Z1K15>!-@P]H,+)G:+V_HG<R
M5;EA%Z5$+:T%[$)R!*R2X7->6I%#UJC>##\:39Z!3ACWJ%5#F II[B!LXEGA
M*>3>+#GZ@U:,'B'>>P2YXI]F("AR8@5]I#&HJ4!+VW2,A,(^P)-J[G7.(D1/
MWJJ*"(JDD",*WU"XR+>5)3&],*8 ^JYY5S\N(1".68(L9DI50.N]@<T*%%)@
MCC!5(1*RD'SF9B2^K^[A3$R#;M$O#B)7CK!22^ 2S@GVN20J*(;B,.WU;<B:
M$O9 WQ;F7C45;#O;T.C !D2F%2F_DN %0"GI_)G@KB:2+1D;.>\"XFN^U.I>
MK4B/YJBU$ --I<A]@H(5"I?4N!?"ZZ*#WT>>;K0949E65 K=(R@,Z%EN8.42
M'0SI1 .K5QW&W=PL*OUOE!P03\HG.E(PY*  0\\Q^-80&L5*M4M3D*\+0&.T
M+<\M7^=80R%[L &?9%,1H3T?/O/D@T#0<%9UJ=I$&V!I5'[@8 E*D#KHP(4-
MC.&).:6TWD10VF0@Z#5ZFLQJ6W5SV 8\+,;_N.FL:WN[00!&Z6X@TX'ST6W)
MFHCD\[$[E72;X:.@ *E:)*)+]&];?D$J/5D]*M7]\HO>*6'H*Y@Q*_6"_0LZ
M)!=&V"I%*DGX548&4<A,;3]F6[;36NIH"WZ.>70:V__3I/@^.?)Y!^>G(KV0
MFF'>IBA $'9RJDL&&[4_(UGBNOXHZ)S!TKJ<?K4]6A& 0<0"08)I61"<G:/K
M($^>N.-$K)&+2#BZD?'QM[#J'V8BP6'_02I#8FHWM<X)7('RF/(>!J 306Q0
M*; #",\4.F$H&H:/5S#L0R(S_QBEVJ+AH+(M98MRQN4HC,,S<(^+!FD.;$@V
M. 3%E-O(:BBPHF[6<D,^$WU3&;CH$#I%%\HG+]%OBJ\C;WBF@/Y;+7$F20)6
M_X:A0H/H'D%PH#0RH6W*LJ3)L!&[[D22P^&&29TCO@,BO &8G@UD[/*B.J71
MT*M?$50XB(/"9TT2_@S0,4J/:R?$[:.?I5F;QAF9A+#C!A/6#^9$: WEA?XV
M+'LXVQR&+6:4@TKV3JHJ0LCD#2@FJT:;8M37K!*VTV2!GZ*68R CA\\, )1B
M4E+56]4_ZLF"7, &E 1"P0Q]":#:0@;W@_8!K@'UJVLX0PX$1Y4#;U-"H.T6
M2_98*[D)H'ME"'G+:'HC\:XQ()46E+,&>-RRB</P&DTAP^.X#*YFW[_7G78)
M["G*YF1,:UOQ;G=%<=(;\9T&*6J(D2A&N[&M6HGCWHBW\SE"PWD'O@:]<P;:
M_H ?[-;"-&WBI_VB($0@\.L__A$R8[4T"/E7F'P02++B=HD:V*!(3]U(RC1A
M,,4-\:.<)5N=]M;T4KCBXPTH.M$/%RV: NW,ALR>(F+]V %X@.=/U\<OAP(!
MMGV'03G7TF'J%<S"T.4TAG(\3K;(IK"<4<J<5<K%.?!1*3T]RG7B49$+I 11
M5!$#J6VW@RKB2A=",P\"(0<PC3,4D"BX2<+5KC[#T86'@H>1+2L%Y0W.W<@<
M9.)\@,L&(IE P&_@I_5\0QZ^!R61;&=Y%#!27-O*._BQY[P9]'NO1M",''ZQ
M\3A>-U18PAHC@%V5\0Y%D7C>(!1CP^;LJFV'P 57=J# .P7$'9$,BI9^3]AD
M)/YI8CEK#7-=B8G =\%.!Y=CE63B=I)E5&HL.HW$CZ9:');ZGO01";@4?P>X
M1JX'I0M;R6JA*3%UOWLU_YO+9A[?"1?A^E:*?")VP*=S":*$M+TC7Z8II?2>
MNJOP.\ _2,/+3<PH+.$OY2HJ<TBW76+ACQM\M/:)D45L=T@0 V=BT/660]H.
MNZ+M,2[@@B2JC6GNTB(>%\'XLWJH%2(']#_H:4&,KM B.*>",<Q1!'E>*R()
M,0I9E1*9TD8UB"3) U\.&2BB#89+H":YKDF6#K8&!A:JPG*6 (]3F97.G=DU
M=XK@E;/U+)B1PQY((WA%#"=8\ 5G1-DHYG-D_AA1:U=(H-HF?%0+C;GCA^1L
M1$.5%Y_T L%Y5SK<$3((MUW4!V\R7M XW9%<RX9Y14_MPCM9D(_O$LC90.R/
MF#B-[U18>4SQ: U2P!W]FS])UW?4=0'Q6V&E7=0=H*^<W"?2Q"H[3.^:KG!V
M*+4)#TA6I'K7;#@$T0B7=2.)>..%KAD]4-@DW:"-<N)2\SU515-QA9W[6[(&
MQ(*O6Y\@06K_*!W-?C*E[HEB)M.X&#]/#6N/5W"3PM GG4A/-H-># GG VBE
M+C'9+^^RF#_NXL+MD\($2Q5\V!KKE$W#(<P7TC;B>/H\$Z<3^-_D]#D;+7S8
MJJ[+X>KHZ(OX(*6)N?"3*9^,D6J\DB&BSY]OWPD,4PWAZ>-2EVK;5!\G_3$Y
M1V*I=N-)Y651Q)/G^V@! -,1"JC4&J(BWS]S\AFI,3,LH#.HVKT P&CM$'CA
M\BI @IB'HK?5#>&\TEC[6;R$U&KAXW785%HRA<Y:)@4O[!:-K)<.^<P-EJ>C
MCE_U*MP7?,=$-U5A$U<08UVX>#$P8M$@Y;#07$.ZD%KR'D-V]LM!BDX0:]%8
MRB4/A)F)SUR](O#=G55E:>'0('AVM&/1Y7S[0(E.3'<'6?"7&LE(*AK%N(H)
M-*;$X#L)& '073%,Y&HY$(;*JQWH<@0@BA5O\]8@BQ[QI)NPTL $Y@)/@N6D
M?549SQLR:=*#NFL@U45PH1GGV<X2Y'#7>?Z&,%2R!DAB>OV%)YXYSB;1X[[2
M 9#=:Z>8%7YXC 6*P?@_ LA4A&D)&>5MU'!.1'X7S3- %15=YQ*T(C>@&\ '
M@/%]F@;<3.E2*+U)YA)=@HS(JN"'M*Y+>_0MM*M=FMW:'@9[DCTZ%!8B$,"1
MVRX6[&E!P-+="BN";)UMQN+K*^Q*_@K[!N&O34<%HSTB3>3&CF!*)6=85?H"
MI) +R. 6&-;9.Y.KH,CG7!)[W>N(-EN"IEXN"0M]P0'0\W)[FL]"R8*>6\HP
M$C>XQPOW+A4&@CUZIT^$=IMYH!ZP"6Z%7L]CA 2=,/_MVL39:>@:T#P<GS""
MDMD25G+MPN;3 \"[R="71+2^73\2W\A]T<W.#QV,]-%+D_*C^FUI(VHA$)#[
M.EAT:G^P$_#*S,@UY%($$?E69<"Q,KB-6['M0 )//_6S:V<:5=6%K-_N& 9E
MZ [1 '_84!![-':H'1.U$#= 8D3H<%'4FQ7'O "Y.7:F?C=<2M+C;03"T2%E
M:H;=;>%F= MZ)VYQ.V32UGNE';4U^$L;:Y*#]ICZO'0B=Q$YU.9#'2D$2L&%
MN#_5DXRVG*V:PP*,(F G+(VYCB(.&$#P/<(-$.X68.D+L'<M2K^K!VW=?4-!
M1Q?OFF/U71:08EDT44Z\^?87ZVBZZG!RA6X;$ZJ0RZ<)/%<\:#G7]>.M(:(?
MN0X5-RZS9<YM\1'V?K=8!@4DXDJK#Z[(A6X5Z-Q0P.>H2'86*GDXO._K9EB%
MN><:":3?D4])O54NNPT)IL;[?J;0<;<+-$,5G4S,A%2S9RU;]RW 8$G7&1X<
M;-M0-.$8QX?\7N:VY>O/M9)W0R>R:RE>#ES4=P>+I\5!=_IY. 1;E+;118#:
MCX8)NM2)0?HSK>:'#J+H\=CEW?]SL;>'4^!0G?/X=+3=BI-/CK-)C 8S?38=
MO8@]6O[Z+.TJX'K_;IY'S@;CS^_P=W0CCC"7Z]1>"WI=<FRVO5/L28UVQ8(;
M7O'!(BX$:;H_=1YZ3T4A&RB@#?6V? EXH5O&R>ESP";SX3,-]QO.+ 90=**K
MJ>V \9/UA$LV+&W2E1@;'1LXXQC)]VDI!7B;1O<!N^E\[-;<.FZ5'GB_7;7/
MN]TG],_1U%U-@4G/)MF+B]-L.N'J&9=X_.9=!3H$"_Q;#=3[8[<<+G-Q<IZ=
MGU_T+['Z\+=W01,[7J^HWP$[4G:$DA,XH^@E8PQRH2)4HJM!]8IMQJKPA>^D
MG ^__M4*OZ=0]B?I.C;^_M=4_5/Z_42MWB.Y884^S8ZGX^QD<O9E"CW-3D^/
MLXN+)ZDT"OV_JM'8AVC;%7=A^RK>6^JPW;ZE^Q[[<> XY(-*GJ;W#*X1S>D!
MM[#\ZOK>=3+;J]]V)R\\=KUFK2-2)3<P[_LM@OPV0*^X'@I3?,WKZ+"#PO'(
M&C0]U#((*OL?K(&L3(T^V:GPN?_^"^N7;W;KE_YWTE_*^-Y3R3P0X@<\$P#N
M)N.3[,7I<?_AB]-I=GP^%M==>;<S;7J678S'V<79B_CH)#N>@+Z>G(G;:"G]
M:1/4Y9/LXO0\/H*=CL_AT0OQTU;8Z,\]R<;GT^QB>IQ./9F"H9U.Q >#EW&[
MS)T!G6?'V>EXFCR$9<ZF%]ED>I:H04\Z'WJY(.;\+M>P'>$_<%9H-70_5!6'
MD&=BLL_-C.Z.%H FI;L9-SLTE#80!J7^630.S"-"LN6T]T9N('J*[RTX@<+?
MD$GJ<"L!X-XK=_<!^0)$"+16:SOV>F[J1Z+,-21N+1?W=AT=]T"FXP4) "SK
M7(K':1"+:E-WW$\D,75#Q_#W!CGI+3X2-X$7;!)P/5[4!D5P#_-^ZGP*U8(5
MA@[NP[/=J@XM$SAUNR<O!S/DA,PUY1V/J?WF5!1R8WL'-M0GB^D3L\D5A_1Z
MUK%O_>'N-*8%\P;;7VGK+Y)C!X9;V4^'I1)4SVT*KI<[N2CG220#ZJ'@%VM"
M#^] ?QB)$1Q[67HEX#7Z?8PTZK UA]Q3$W[L=Y/AE8(J8XJ+/$['WX:F.D<Q
M/9Y\ZYO$76=!H96#],VN^Q0.Q_1(I [X?O_FP#$Y&W""!2J&^V>EV"9SU/=2
M3S#?:!&'^ 92@:Z;FWK,7J/$E7"+\,['VYM#-\29E*6;R;@++L)V>=5!JHAO
MM_@97SO)?[RZ<<+^!I*T7;JZEAL,670+M$B\DI$+? TJ\YVW8, 2X@ZWB_&)
MP\+$1]=4D3EEW?VZI]!U=[F V;-O?&$,W02^ I>XF"3H]1P2.HF^KO&%6"*1
MK==8P-=0'R"G#K^R>)CK^ X8O8#F9@RS&V]A6-3(PJU:0\1?("T-@#;I(5*Z
M?3B!V^0$6//VR2LA&.@4M:ZYJN Z PEF[H\ +8  C8XURMR!+=8P)/"?:HTM
MCZA,%>IW9)XK519[ \/I22SFWF-Q%GN7&P)OUQK\CPZT!G@PN? WQLQCK!=Z
M\]E]S6LR/:>W]C[GVO2O]C.)7OWI7N8V[9@8ABM;OH>] ?RG%Y"W*(#ZE5(-
M58'B;6J&(W-(B%:^<-CK&@R)![\0!ESJ2KJVQWDC>2"G7/ZL8<R-\2>,\Y7]
M%-;(>D;ART378(P:DK1?= .D^[&CW<XE9I&N/'19T,M28/59@-R^R83*MG1<
M&=X,M&H=C)4_-:I#6#/,F4MM.,G"+U^E?/G.3UEI?HFHA[7H-1;\H31YVJU,
M;ULF_&1A-W<%BU4LMPM'$;X1:C=)H8-O>YU!8@L_N6[?B,U^P?J:,#<$4"DQ
M][VCT4> 9N#-E:ZE[W$L.G1#T@=3MP*]X7?;NUB1+)CM@G0J'^(V"*E_D-X5
M#+PW9+<A/4$JIV@T D^#RXMQF>U"4#+5U5T^!=S,GO>8*"&/-W-'[GCV=;?_
MM2XI-E;%X/3'.Z-W@; WGC#>YLV#8C3=Y[LPBE-IK,.4V/&+NX1B45?%=RR&
M7^]A!_2U_F;[W<OT[=UPM5J"LVNI]2^\/^/>BB8BO]:]=8;?EAH0F,/%VP*C
M2T].RK<EM><MN1'OTO"]E;L\O1SZ.P='R1^, #M:T)_%L%QBX+\=$9X*_Y<W
MKO@/3L3A_&<[?I+H1L$%J3E,'8_.3P^87O^E-37]^8F9:4&?Z>,2D@/5X #X
M?6Y,Z[_@!N'OD;S^#U!+ P04    " "SB7U4%I3_K98#  !O"0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q,"YX;6RM5M]OVS@,_E<$WV%/0FS+=NQT28"F
MVW![&% LZ]VS8C.Q4%OR)*59__M1LN.D/]+#W?:2B!3Y\2-%2IX?E+XW-8 E
M/]I&FD506]M=A:$I:VBYF:@.).YLE6ZY15'O0M-IX)5W:IN01=$T;+F0P7+N
M=;=Z.5=[VP@)MYJ8?=MR_;B"1AT601P<%5_%KK9.$2[G'=_!&NQ==ZM1"D>4
M2K0@C5"2:-@N@NOX:I4Z>V_PMX"#.5L3E\E&J7LG?*X60>0(00.E=0@<_Q[@
M!IK& 2&-[P-F,(9TCN?K(_HGGSOFLN$&;E3SCZALO0B*@%2PY?O&?E6'OV#(
M)W-XI6J,_R6'WI9- U+NC57MX(P,6B'[?_YCJ,.90Q%=<&"# _.\^T">Y0=N
M^7*NU8%H9XUH;N%3]=Y(3DAW*&NK<5>@GUW><%,3+BM2N@5\WXL'WH"T9AY:
MA'=&83E K7HH=@$J9N2+DK8VY*.LH'H*$"*OD1P[DENQ-Q$_0#DA24P)BUC\
M!EXR)IMXO.37DGV"G8[8J<=.?T<AWX9*)N0BVAL[7 .1RN*H&*M%::$BFT=B
M:R 6=&N(VGKA1K4=EX_O_BA8G+\WV-/R'H>C5'L/8HA5V(.VKC0_\(8H3?8&
M)N3: ^")0+L!/9Z*IX*+B'KP$Q]R)X6CL+;<@B&5:AJN+Y(H+V5%B9!ELZ^$
MW*&C,G"B6H%4.!'<11$2AT5KD*7 8 I#:#3GT@>[FZPG P'JJX1);E%4!W-%
M'(4H>?_;_I]4Z*CTE7)5(JOS:K^,_EK1QLT_29S1HBAHFF;GRI1&44S9-,7F
M>&PQZ<^FP5J^\(\9S8N4)EDQJC(ZS2):Y"D2JWDKT/F94T)G:4I9=/+!>,4T
MH:S(R0H;"\_FI1>C1<(N2",RH]-X1HLT.:E2FL4%95G^O^N_KI6VON.Q03IE
MQ'\N<T83AAD_J5(^F]*L8/]28$;3&.MUYMEKLC2_6%\_ NQ$+:;1%./A83XG
MG=,\P=K$TU$SHRS'CI@EY)NR.*L7I^BL6]+(-0"-LMFY,L$,4QIGT:C\IKDT
M6\"1W6K5OCJT/B7^_ ;!ZV,P?+:!,]H/II>U&U3M..) .G3>=5H]N!MGN"*0
MN$;13\R@&R).7KNOP[-'L 6]\T^]Z8/U[^&H';\FKOM']&3>?XI\X7HGI"$-
M;-$UFN190'3_O/>"59U_4C?*X@/MES5^$8%V!KB_5<H>!1=@_,9:_@102P,$
M%     @ LXE]5%-R[[PP P  KP@  !D   !X;"]W;W)K<VAE971S+W-H965T
M,3$N>&ULO5;;;MLX$/T50BT6#:!:(J5(<M8V$*<MM@]M@J3;?::ED45$(KTD
M'2=_OT/*EM5+'!0H]D4D1S-GSAQ2',UV2M^;!L"2QZZ59AXTUFXNHLB4#73<
M3-0&)+ZIE>ZXQ:5>1V:C@5<^J&LC%L=9U'$A@\7,VV[T8J:VMA42;C0QVZ[C
M^FD)K=K- QH<#+=BW5AGB!:S#5_#'=B_-S<:5]& 4HD.I!%*$@WU/+BD%\O4
M^7N'KP)V9C0GKI*54O=N\;&:![$C!"V4UB%P'![@"MK6 2&-?_>8P9#2!8[G
M!_0/OG:L9<4-7*GV'U'99AX4 :F@YMO6WJK=7["OY]SAE:HU_DEVO2_+ E)N
MC57=/A@9=$+V(W_<ZS **.)G M@^@'G>?2+/\AVW?#'3:D>T\T8T-_&E^F@D
M)Z3;E#NK\:W .+NX+$NUE=:@P"6(![YJ(202["RRB.Y\HG*/M.R1V#-(E)%/
M2MK&D/>R@NI;@ AI#=S8@=N2G41\!^6$)#0D+&;T!%XRU)IXO.07:YV<P$X'
M[-1CI[]!Q]-(Z80\!T;^>%6P./GSMXVH,'0KT%[E@]&I[1XQ^:)Y!?CA_,!F
M\'U-6!ZF\32,V71LI&'*6)@7C-P>@VJM.G)]]7;Y]>/@F\9AD>?#,F,AS2FY
MM@V2.I68%G'(,G8DG4U#FB0_5(CTLB0.:58<333,S],P+C)RV>*EQ&6)W)0F
ME=JN;+UMCXD/(6\8IBLR>C:RY(A*X[.7-\MKE*33,(GS[S0JDG":9X/Q2P/]
M-27LDV=DG>$%CJ7"&])8J(BJ+_[O$W*-S4'(]8LDQUIXW486FK*0)1FYT>I!
M^,O^-(8;*3M2I RW'J4=-F*GA;4@48^:5%OM^#DAGX#K9T'>4.20G+GCJAY
M/V'P,?,8\'N!:(RGB?Y4/X>/=^$OZM.?M!.*W8FU%+4HN;1N\TN05G/7XHPC
M76JHA"5:F'O"-9!*F+)5!H^'D.2SLH"?SD\OO&C41#K0:]\JW?%"@GT_&:Q#
M-[[LF]#1O6_EG[A>"Z330HVA\20_#Y"0;X_]PJJ-;TDK9;'!^6F#?Q2@G0.^
MKQ42W2]<@N$?9?$?4$L#!!0    ( +.)?5073LS8= (  .,%   9    >&PO
M=V]R:W-H965T<R]S:&5E=#$R+GAM;*U486_3,!#]*U9 "*30.':RA-%66C<0
MDY@T;< ^N\FUC9;8P7;7[=]S=M(T&VP2B"^V[WSO^=TE=].=TK=F V#)?5-+
M,PLVUK;'462*#33"3%0+$F]62C?"HJG7D6DUB-*#FCIBE!Y%C:AD,)]ZWZ6>
M3]76UI6$2TW,MFF$?EA K7:S( [VCJMJO;'.$<VGK5C#-=CO[:5&*QI8RJH!
M:2HEB8;5+#B)CQ>)B_<!/RK8F=&9N$R62MTZX[R<!=0)@AH*ZQ@$;G=P"G7M
MB%#&SYXS&)YTP/%YS_[9YXZY+(6!4U7?5*7=S((\("6LQ+:V5VKW!?I\4L=7
MJ-KXE>RZV)@'I-@:JYH>C J:2G:[N._K, +D]!D ZP',Z^X>\BK/A!7SJ58[
MHETTLKF#3]6C45PEW4>YMAIO*\39^;F\ VF5?IA&%NF<,RIZZ**#LF>@,2,7
M2MJ-(9]D">5C@@AU#&+87LR"O<AX!L6$\#@DC++X!3X^),<]'_^[Y!YQ)0-7
MXKF2?RG4R]!T0@8T>?,J9Y1__&\[U@R:)6A?M[W3U<\ME-P(BW?X&Q6WP^UK
MPI,PS;.1@V7A!YZ34R6Q.\6R!O,$$_,\3),#)*8IVI1<MT(#P<4^160A/4K"
MC.8C#SZ**$:^*2MJ4OU6E"QD/ MSC#AX,A:'+I.O8 QVA-:((:W2OJF'A,.4
M)F'.#T >LC@)XRP?U?ZM5/)]3_%NE#W*Y#RD,7WD2^G16,J?_J%HU'@-Z+4?
M+ZA2;:7M>G#P#A/LI&O<0W@W_BZ$7E?2D!I6"*63+ V([D9*9UC5^C9>*HM#
MP1\W.(5!NP"\7REE]X9[8)CK\U]02P,$%     @ LXE]5)P\8"@) P  60@
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
MMG;C^KU>@FICB2*F#WQ/QR><J!/[47R#5J7NK$(*3.TPPKSN"3%?7B;:B"'
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
M<#(JNFFZ68*?K^:H Q\3?Q#Q1[1.^,;&1;R./V#V!Y5N'L /!$J\B Y&*R!
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
M7D@GD/X"W!1C3VR^G@]\OWS%TCCP@B X(_FN>0E,\@8.^I&7!<?Z!\F]:P9
M3:AXJM7J8!6/CVWV\T^\$+6P+]@O)#98HH:9EWB("MOW&9WX?"W9?U,OFQRO
M'"2WEW;R4K[_(7?#9!)[>3ZY[DF25G(N=\,L<41Z^NFXE5S.W3 >O[:*PE;R
M[_(WS":)ER1IGV>4>5F67Y^$/(R\.,^].$YZVJ$W3O WSJY/VX'')-C>X8F]
M)"#=<4^6>&%"F'$GN^VG7RW/E#A5%_"BHE6L,O3R;-F2ZGQ7I&T+P&M^:3%M
MPC!XIDZ >VL56_Q8(6(9150 >439H>F!<IJ,*04D3,X)TTZ8Y*F7I@D)#UD(
M\[:H#IR[)2\8GS_-Y])YE#J*66('VF*T5UE+AE)SE4_<CNV[5)LUH/OON(^X
M_D$FU$.\7D.M7T;G;B&_=Y7C@5VY!XO!8[>1=G>K=]+N372[>PH<U'</JB]<
MKP3>$S4LT3089>F Z=TC93>Q:NT>!@MEL3K<L,)W'6A2P/6E4G8_(0?=2W'^
M-U!+ P04    " "SB7U465<-95$(   O&0  &0   'AL+W=O<FMS:&5E=',O
M<VAE970Q-RYX;6RM65MSVS86_BL8;;+;SM 2+Y(H)K9G;#>9>B9M,[6[F3Y"
M)"1B"A(L %K1_OH]!^#5DARK[4-"$<"Y?^<"^G(GU1\Z9\R0KX4H]=4D-Z9Z
M-YOI-&<%U5-9L1)V-E(5U,"KVLYTI1C-+%$A9J'O+V<%Y>7D^M*N?5;7E[(V
M@I?LLR*Z+@JJ]K=,R-W5))BT"[_R;6YP879]6=$M>V#FM^JS@K=9QR7C!2LU
MER51;',UN0G>W<[QO#WP7\YV>O";H"5K*?_ E_OL:N*C0DRPU" '"H\G=L>$
M0$:@QI\-STDG$@F'OUON'ZWM8,N::G8GQ1>>F?QJLIJ0C&UH+<RO<O<C:^Q9
M(+]4"FW_)SMW-H@F)*VUD45##!H4O'1/^K7QPX!@Y9\@"!N"T.KM!%DM?Z"&
M7E\JN2,*3P,W_&%-M=2@'"\Q* ]&P2X'.G/]B8%)^G)F@!>NS-*&[M;1A2?H
M@I#\)$N3:_*AS%@V9C #)3I-PE:3V_!%CC^P=$JBP".A'P8O\(LZRR+++SK#
MLA&C><=H;AG-SW;1RW2!/R6.ECSFC-S)HJ+EG@BW5"E(+&7VA)8987_6O *H
M&U*#-Q7!+6IXN6U.>W"<0])PL2=RL^$ILV0[JE@N:\V(D"E%E.LI ;"V,G;<
MY,0P56BRA8R%7\3DM"1FQ\03(X4-H =K#/)+P'Y&J-90"9"Y7 N^I2YU%!Y(
MI<KPA+$$4 (T*OQ$1<U *;MHY9**[M$63>23E<BL#E/R$YKO3FK6ZIB"$E [
M@#\\!6$ZI<))306MK14Y3W.KPP9R6"K0@9=&6L890]:\=!3'M=CE#$RHT.&*
M@Y%3\L6N/%$NZ%HP[Q@1BLNX3F5=HEMJC<&PC@(.A!>5X"DWH$A/_)[D<L?
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
M@J/##;"^M-8?/E!!?Y]W\U]02P,$%     @ LXE]5,D%R]U)!   #PP  !D
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
MH+H^L-ZI=<M^9OMZWO:<)O:#6V.FIPG$:?J-++"G*\/#M;/^\<IU%S76DFF
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
M8RY\TA=^#-W*?T9WU@UP''^[L"4:")J Y^==-VQ_$(/==Y4O_PM02P,$%
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
M**)5(#$/]MDY9E<2K% <:/(QY%J.@V)J[S*@(/*Z#N,HHL'+81ND 4' A51
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
M6A3*>CBP4#>J".0F;B(V:UVL<:?55@F_MB:LU@+64/5"V<XBY\Q0:\VU+I5
MC)@(69MF)8Q?8Y5?@T_0(K_!RB;(2CA924N,XSR)?ROPLI)>T<8 WLQ2R!84
M;S1\3E5;\>!L^AS0KRIX\42TRG(H:@HE%J8)3D6E7(.H"2Y)J?!0-6JI$;'V
MM-(&6ZR)([.H-(X&72>\\1+*7^T>_G@ZZPZ_50MSLM'()I__^OCKH]ES/AIA
MJ2HWI)_"6-/(:VW!Y\-NS;$ 8Z6J=2$V8(Z%JW"R5859-?H_,-]BBZ.5N"1"
MXG<E*YCLLUU)/&7N!?Y]DA!*S")#IU/QD6*F:R$:K&?($JX_:,+D5N9:V2:B
M $JG6P59H#-.!(#/E(=48*$6)Q[%VW(+.XB/K@)=6)F$O9!KB:PQ89O0HC\;
M[2'"-Y\V:MB'H:<(-^H:OR0A3M1*N@"6B5N'7,&[8Z8A]CIU38:%D<&UQ.:U
M9!0NP7\I9 G!'$D#X;\'V$2Q7IDBM-J8FD1DF8W+I 943+#:U6 ?0?;?V)*6
M%Z*T8-+V9'9E]\"=L< @+%> 04A7!M9\41E'N!JI>,LVX</@C1:T9>7(SE);
M5IU34G@+T2J^)-AND:*QRRH?;$._H)M'/78JJ++J)<B(8F%FF-TSL,(@BQ44
M=W!' W%+7<C&0XXD ''='S/$G_APH7"RPREK:&/$4!/(15Q.I=M80H@J%)Z=
M&'IIE0$H>%4465/<:AC;Y M3\1FZQZ_!')S-M=\24/=A1NH:2385;W&'/ +9
MNC,%H @RW57OL[T$ICF$F'M[R61TE\/Q#1YIPF,Y29H,U5B?PY(),6\)2GP.
M@=E4NI2>U0>_"5A22+<62WB+$X@]?&XIEM;4B0L*;1/1 #FZ*4RM^%23E%GI
M[T&7I$3P5A"?E"MV@47\F!+(>A\L!?7:6!5%@\-5B/78HVY\JM.2B@:W,9N&
M\4JB^"&6[6L[ZF(9#^E\&"B4RR4J.-Z$LO%*^<&7DV[_^8]G\]G3EXX8*@$K
ME]!MKW5!3OTMP$)=4(@TA&*J[M93$S8.G4(F*EC/ 9*IW :L><T<!@LK(210
M5A"AT7WNIO,LPE),JP- V+61(4H^6UM.U(@=+H9$F"84<4<!W]X26?AWB+ T
M#1S)"K)-,@%$W3T_>:+LO"+Y#J+!DD)"I 9/07KA-)=SAY#0&$_(<(J#P_>
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
M%61L#7$Z%DDF[B Y@T*-6=]!<Q2J*).S0<OQ?5FL7N3ZGF0:-]%K?9XXQV!
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
M*I8<AO.AEWSON%5\X-UF^N[>S3&F/T92#R4%!CV;)%?S63*=</:,4SQN\;8
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
M"0S:*>#_1BE[%AS!---7_P-02P,$%     @ LXE]5/:EHVEP P    D  !D
M  !X;"]W;W)K<VAE971S+W-H965T,S@N>&ULK59MC]LV#/XK@E<,&R"<;=F)
M[5L2H'>WH05VZ^&N[;"/BLW$6F7+E>1+NE\_2LY;\W+=L'V))(9\R$<D14]6
M2G\R-8 EZT:V9AK4UG;786C*&AINKE0'+?ZS4+KA%H]Z&9I. Z^\42-#%D7C
ML.&B#683+WO0LXGJK10M/&AB^J;A^LL-2+6:!G&P%3R*96V=()Q-.KZ$)[ ?
MN@>-IW"'4HD&6B-42S0LIL'K^/HF=?I>X:. E3G8$\=DKM0G=WA;38/(!002
M2NL0."[/< M2.B ,X_,&,]BY=(:'^RWZ+YX[<IES [=*_BXJ6T^#/" 5+'@O
M[:-:O8$-GY'#*Y4T_I>L!MWQ*"!E;ZQJ-L8802/:8>7KS3T<&.31!0.V,6 ^
M[L&1C_*.6SZ;:+4BVFDCFMMXJMX:@Q.M2\J3U?BO0#L[NQ.F5*T5;0\5P51K
M[B[+D!_>\[D$\^,DM.C%Z8;E!O%F0&07$&-&[A&Q-N3GMH+J:X 0P]O%R+8Q
MWK 7$>^@O"))3 F+6/P"7K+CG'B\Y-]QOGH!.MU!IQXZO0#]A$U3]1*(6I"%
M:'E;"BZ):(?N<66(.W(/:U$JTFGU)Q8G%M$S-D>'I6[/7?<W//IN$G\AE<L.
M;0VD.F1].8+]A1!A"#=H+[%SS37Y_KN<1<E/_WG%=$(S!^U3>DG)I?J<,"*W
MW-3D%<E&$8W2''?Q**5Q$I$'#1T7%8$UOE@&,/@6TXO4-3:2UHX;-P:L.<'-
M&<WRY%2<TR++R4<N>R"\PF(FEJ\16",#\>P:Y,0F22-:Q-&)/*9LG-&BB#%,
M=\/V"R6=Y"XFC!(^]\+?/B4M/L2'QC';@XSH.&?D5V>QNY*8QFQ,\R(_)WKG
MV1^QC@O*\KUZDM B*LA[9;%P-JI8O=6%AV%K]HHP1A/$*ECVM7"<971TX.!X
M'3Q)P>=""BO@'[J+BXC&:7PD*9+3O/W?ZQ_ ]?"8O5R[OF9]C3YB/R$3C'&;
MPOWN;5NJ!LA"J^8<T3V]X^SO);]AC4AES #RK:L[2 X=92F-LN) EF+V&65I
M@MQPK./SX7M_TT1G0%(Z2D?'YW-/9W@PE1K02S][#2E5W]IA0.VDN_'^>IAJ
M>_7AV^">ZZ5 2A(6:!I=93A-]3!OAX-5G9]Q<V5Q8OIMC9\HH)T"_K]0RFX/
MSL'NHV?V-U!+ P04    " "SB7U4;2$UMFT#  !>"0  &0   'AL+W=O<FMS
M:&5E=',O<VAE970S.2YX;6RM5MMNVS@0_15"6Q0.H$;W2U+;0)(V:(%M$33=
MW6=:&EM$)-)+4G72K]\A)<MR?=D\],&6YG#F<#@7CJ8;(9]4!:#)<U-S-7,J
MK=?7GJ>*"AJJ+L4:.*XLA6RH1E&N/+660$MKU-1>Z/NIUU#&G?G48@]R/A6M
MKAF'!TE4VS14OMQ"+38S)W"VP#>VJK0!O/ET35?P"/JO]8-$R1M82M8 5TQP
M(F$Y<VZ"Z]O$Z%N%OQELU.B=F),LA'@RPN=RYOC&(:BAT(:!XN,'W$%=&R)T
MX]^>TQFV-(;C]RW[O3T[GF5!%=R)^A]6ZFKFY XI84G;6G\3FT_0G\<Z6(A:
MV7^RZ72ST"%%J[1H>F/TH&&\>]+G/@XC@]P_81#V!J'UN]O(>OF!:CJ?2K$A
MTF@CFWFQ1[76Z!SC)BF/6N(J0SL]_\PUY2NVJ(%0I4 K,OE.45(74T\CO]'R
MBI[KMN,*3W %(?DBN*X4^<A+*/<)/'1L\"[<>G<;GF7\ ,4EB0*7A'X8G.&+
MAM-&EB]Z[6G/<,8#9VPYXQ.<C]@G98N,8DGN&6<:WOV)A5:2T68W1S;KSG^>
M^^T?>>A'[\GO>F(\H5F M#'=@B:VYL\G=T+I YNO@K\K1+,&C4%;20!L22R3
M[?(;DD2^Z_O^$>2[I"403AO8Z8=NYN_K[Y [6^]@^JQXJL5J9Q6E^S9;^9X6
MK&;Z!5N"XQUB7",%UJ#$;A_O&1[L^2NR?29N=K6_LD-NBJ)MVIIJS"YMA-3L
M)[5WRZEX_T_L)O%5Y.;YU<4(B7OD6.PF66P=&>DG:8^<CMTD2G^U"H,>>5W\
M)ME5[,9Q,O8SS-PLRR\.CCP)W2C/W2B*1]J!F\;X2[,+<M""+N&@1\43N;%O
M=-,1%KM!;#BC,_V:#/V:_*9^=<E]JUN)XCC7'Y]Q("HXULSG-]YCP<W9P=6+
M,Y8 +2JSJBO,/CQKLD3GR M0J0CEI<%Q^"XU9IHI NA,8<I1"[(P/,A1XZ!5
MUZ^^$[#S0].S>6@2:L1H5_IQ:K)FP/@8F Q@G"=NDL0&W"4NR/M[8.?SL.3Z
MZ?$&/%(!Q[+NC68>EOW*3G:%Q=MRW8V_ 1T^'FZZF;E3[[X\OE"Y8ER1&I9H
MZE]FF$?93?-.T&)M)^A":.PQ^UKA!Q!(HX#K2R'T5C ;#)]4\_\ 4$L#!!0
M   ( +.)?50 !VK4D 4  )X2   9    >&PO=V]R:W-H965T<R]S:&5E=#0P
M+GAM;*U8;6_;-A#^*X37;"W V!+U0JE- B1IB@5(UZ#.5NPC;=$V44GT2*IN
M_OV.E"S+K['; DUE'LGG[G@/[TZZ6$CU5<\X-^A[D9?ZLC<S9OYV,-#C&2^8
M[LLY+V%F(E7!# S5=*#GBK/,;2KR ?&\>% P4?:N+ISL45U=R,KDHN2/"NFJ
M*)AZON&Y7%SV_-Y2\%E,9\8*!E<7<S;E0V[^GC\J& U:E$P4O-1"EDCQR67O
MVG][0^UZM^ ?P1>Z\QM93T92?K6#^^RRYUF#>,['QB(P>'SCMSS/+1"8\5^#
MV6M5VHW=WTOT#\YW\&7$-+^5^1>1F=EE+^FAC$]8E9O/<O$G;_R)+-Y8YMK]
MCQ;-6J^'QI4VLF@V@P6%*.LG^]Z<PS$;2+.!.+MK1<[*]\RPJPLE%TC9U8!F
M?SA7W6XP3I0V*$.C8%; /G/UP,$EC5X_L5'.]9N+@0%0.S48-P W-0#9 ^ 3
M]%&69J;179GQ;!U@ -:T)I&E23?D(.)[/NZCP,>(>,0_@!>T+@8.+SCHX@&@
ML 4*'5"X!V@(-R*K<H[D!.46]%SQG!F>(:8U-QJQ,D.Y8".1"R,V5=:N'];P
M-.-H(G.X*:*<(F-C@N"N:5X"NH')8]2Z,2P6"FZ-GG/'>S3.8;68B#%SMP'^
M6;RQ++7,1>;@1BQGY9@CQR;]%OW^6T*\X-U//R&@O!AQY8*Z.6F#W!UXZ'HX
MO'L:;BV\K92"<]BKY5'Q.1,9XM\A8>GF&"0XJ> >U5N;\UKN>.5^^>1=1^)[
M"0Z\H-76;(&(9T+#:1E15G!4D!25.TB][1".HW"GE5;37[(<O^#(\OFIU@%$
M<%%'RB:8<SDYKV"PX0HH37SL![25^#@@*8YB'SW(<GINN"I^P!D_QDF:;(F#
M *=>BIZD8?D1UKT"^ZCG@8UI]ZAQ2'U,:?##Q'JXO[ZY?[A_NK\[G2[+>4CL
ME:KO#9R+7#_SK@M12G 0Q!U)&$68)DD+U;V#IYPQ!"Z-MGF4XC @IQ"FLW2O
M'RO" %EPD&XS-4T(]FC<13O1,8H3/^UH"M-UJG3AUB@2)O 7KE,D3C'=<3K'
M/K^XLFQSY3>P<PH\Y;956=TJ>S&V4]VG?>='^QYZYDRM)$$_;"1;F\Z/YT _
MWH!=S?A[9EYTU2FO('Z@E>]/YWM]C?I><-:.PKX?G?V,CV&?TK,M*1Q?<G:@
M.$=M<8Z.+LZNXF-T*[7958,/ SVYLEC,9>FJ[K+6@TP;M.#*9K>F2/^"&ODO
MA+;NG$XMDYOEP=K7O4]Q%,,=]SH22+681C$:SJ0R=478M96F./;B+0LB'/E)
M?;3-AN-##QZ1Q-\2^X3B- G6DL.F&S2FV/-I1Y)Z%).('N!,W'(F/IHSMTS/
MT <(*D;#:C[/.;QY@%6[^/,":&<W&EO4": B4=9O4/7+3-V_&;F\14+_4E:=
MRJ[]+&O+I77$]5?@!F*%S2M@=CG.*XLN2E2 )Y5RCKM+LTKRQ_NSXK0[.'B)
MM&>GG<X#I9GZ'O9(MW!0:..\3MDX"?@$7B>8A-M7Q?+:C]J^Y@!3:<M4>C13
M)Q5T+,VK (3DN7!YRG'*O35(U]G?0@ICY?,?>M._E]Y0#AMR"O,TXF5F]:YQ
MK[[L0"[2359Q!$T#M>)5.QB' 29!:(6KV 8I])$DM<)5>$D,X8;,!L+M:!"(
M1A3Z"!*[XFP">:_3) ,*Z%CV)[N/ME6-"?$@"\:0!36P6A3SRCCR R;7JP;M
M=0A&TB1^LY;9Y"@7TPTB0=,#?1Z%-%U#MOW;CK6OFP[TS5IKMA?ZU:K'VT7
M0>>;0<'5U'T9T<@U#/7G@U;:?GRYKK\YK);77VX^,C45H#GG$]CJ]2D46%5_
M#:D'1L[=%XB1-$86[N>,LXPKNP#F)U*:Y< J:#])7?T/4$L#!!0    ( +.)
M?51QWPKU:P8  .44   9    >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;,58
M;6_;-A#^*X27%@[ RB*IUS8)D+3K5J#M@J;ML(^T3,?:)-$EZ3KY][N3;%FN
M%,<=6NR+91UYK[SG[JBSM3;_V(52CMR5167/1POGEL\G$YLM5"FMIY>J@I6Y
M-J5T\&IN)W9IE)S53&4QX;X?34J95Z.+LYIV;2[.],H5>:6N#;&KLI3F_DH5
M>GT^8J,MX4-^NW!(F%R<+>6MNE'NT_+:P-NDE3++2U797%?$J/GYZ)(]OXIQ
M?[WA<Z[6MO.?H"=3K?_!ES>S\Y&/!JE"90XE2'A\52]54: @,./+1N:H58F,
MW?];Z:]KW\&7J;3JI2[^S&=N<3Y*1F2FYG)5N ]Z_;O:^!.BO$P7MOXEZ\U>
M?T2RE76ZW#"#!65>-4]YMXG#,0Q\P\!KNQM%M96OI),79T:OB<'=( W_U*[6
MW&!<7N&AW#@#JSGPN8LW5:9+19R\4Y:,/\IIH>SIV<2!:-PPR39BKAHQ_ $Q
MC)-WNG(+2WZM9FJV+V "-K6&\:UA5_R@Q%<J\XA@E'"?LP/R1.NHJ.6)(QP]
M("YHQ06UN. !<3> CMFJ4$3/"0A>ZDI5SN);WBB:*D",VKX-J&V"<%C+QX4Z
M6CH!"G' <*^DL43A.1"(HBJGRK21)+*:X1^?2."7R%4 ,.US\O27A/OBQ0][
M_@5F--FP;\5VO;:FM@3@!>"IR+C2#JK#]&] +'%ZS[O3EN^$A#1.?!JEO$.+
M:!"'0!/DG;K+,]TNC1F-HYBF+-R)& <T]05-D^24?*IR!R;>..D@ANT.3M.0
M4QYUN) 4T3#D/5<9]2.?AFRW$M"0)Y2',7FKK"6SW&8 C[Q:@2HHJ$9B2;(=
MT6$<4#]..P)2'_0'HJ?LA @:"5"0L@XMI8$ $WQ_2SN0XV&;X^'1.;XT^FM>
M5V),L[V\@QJHC ''X!42LU+SW$&]+L#'ZA;/\9-WXW6\'H+!84,0!B\!!K*Z
M1^]8_,)V#!IO=)[V3?L^2%"R7N39HK$=_>F93@&-T(\LKD)04'2#'_#T_T30
MRQ4<0.6^WX37:@:^%9U$ GDT"((.A:6,"LX;B/0DC).T@Y'M,XDA1W?('E+/
M^+!92/^H7<>HG;^,AD':I\<)HA6"U"3BXV'XUNW6F9 '-!:B[]"8"<1_?/I0
M&!ARILD 9YA2'K/3'QR,<12D-!1LR-04*@<'4QK.(:3L3G<<!% =$]ZE)1&-
M>9L"!RI)U%:2Z.A*8A1@*,N+O(844N:;T\#Z83"X #R$EIK/53VTU=2ALG%8
MZ^6 +I1;@]K",:Z<-O='JO_>]IK;G])=CZ\)#WAINMG+F0<=XTG[;'*[KIV4
M5' EZ)Q.$P["O9C#SJ!A> ]=3=[AU(CQJ=-[4X#'@?!$= I[QBSV,!N?D _*
M@OE089_*<OD"&L=7N!0L8<1W=? SP"ZTCG'LB;1A9%XL\-^U@@$<9R "S;J$
M037R>"/;]Z(8__RF]6R=%P7)H4WDII:YBXDG&.S9 NH)^2R+59,2$L]'5EES
MOGNM3%JK8.@"#2&PA%[D;V1L\.Z)VC;?2_ENX0!8XA8L\=%@03N:P-?3GX4
MY_,\DVTD\) *7=T^<Q"B0?LA^:>  '<_!*##EF#??=0"G$\-U!?L]0-]^H"!
MK66(%)!] $UK]9.GU<<:;#.]H9-_],>WXY7TCJ?OR5$@V>F&<3!-:,!$AQ(Q
M07U?D+<:9L],&H2_-FMI9CUMPH>I,0@?;#Z7669P:,53AJMX YK>_,MP9H@&
MZ#[U 1T#<.N,VDQ @_3C[GB>1E0$ UTXBCEE:;P[( Z=JM/Y]](J5P/1O38X
MS6'*06JI+ZM\N5\JPH *GW7>.4V@TKV!,E?=YECG-K#:[H#620.^F_P994D"
MT>^/*8QR@8U5="A!X(/\_MYCG^\!70]@:I<.8837D:A# 5,8W#?"^#\K?M6]
MT?QL2#SVW.@'<!9MQF\2WI)GW]X(3^!RQ>&R!+C9IT'6!2&@!E-C*F',AWL;
M5#Z8K*$]],3L#C'"D3GV!U9X!/D:IMA7C7NV6@*,K!LP:?L,\ 8+AO7QB/=!
M2$T1'P;3#E0^'CD8,#C+^C0 R](@[2^>].;1EC+4VR:=3T^E,K?U!S9L"JO*
M-5^A6FK[#>^R^72UV]Y\ 'PGS6T.*52H.;#Z7@R70M-\5&M>G%[6'[*FVCE=
MUG\72L)T@AM@?:ZUV[Z@@O;+YL6_4$L#!!0    ( +.)?50'JTT#I@,  +\)
M   9    >&PO=V]R:W-H965T<R]S:&5E=#0R+GAM;+U6;6_;-A#^*X16# T@
M6.^RE-D&FC3#!K2%T70+]I&63C81BO1(RL[^_8Z4+"M#8G3KMB^2>.(]=\_=
M\8Z+HU2/>@=@R%/+A5YZ.V/VUT&@JQVT5,_D'@3^::1JJ<&EV@9ZKX#63JGE
M01R&>=!2)KS5PLG6:K60G>%,P%H1W;4M57_< )?'I1=Y)\%GMMT9*PA6BSW=
MPCV87_9KA:M@1*E9"T(S*8B"9NF]BZYO4KO?;?B5P5%/OHEELI'RT2Y^KI=>
M:!T"#I6Q"!1?![@%SBT0NO'[@.F-)JWB]/N$_J/CCEPV5,.MY ^L-KNE5WBD
MAH9VW'R6QY]@X)-9O$IR[9[DV.]-2X]4G3:R'931@Y:)_DV?ACA,%(KP%85X
M4(B=W[TAY^5[:NAJH>21*+L;T>R'H^JTT3DF;%+NC<*_#/7,ZHXJP<16DSU@
MJG94 7G[A6XXZ*M%8-" W194 ]A-#Q:_ A;%Y*,49J?)G:BA?@X0H&>C>_')
MO9OX(N)[J&8DB7P2AW%T 2\9Z28.+_EJNA= TQ$T=:#I*Z#W>%+JC@.1#:ED
MN^\,=16'2RP85A$J:E(SWAFHR=WZ_J7 7K;P_7=%'"8_D&]]_P94];DA&%EH
M-Q@%&]W3?QME^PC))^P'3" ;((V2+?(2AHD.8T>P(2A'4!-JC&(;Y(L%0XPD
MMRB4G-74,GW IT+1C'PP]8Q@*5>/.\EK4'HT^(8D?IJ6?IX5$UGAYU'BS^<1
M^0!:7Q-L-PTHA9@.!&-Y8#6(^HSS-@K]>9E?3021/T_#JZ\E<J",GUC@YA;3
MY\I#HS(Q.\"3CFSP /XEM3 MJ*GBZ D23 J_R.-1@O3"V ^3B'R1AG+"I=:]
M<S73@W_(=>+>R"KVLWGJA_-RPC3U2X2+T^09V?^0$28H3_UYD3Q+8UZ6*"O^
M<6T^N :*O.D!>6^!B,[59W^H_@7W_TZQGA1?JMDH\V,LSR+*IZ(H*OTDS,B:
M=UBQWT!V4NP]7QREVF +L25;=\J^+'_DQV1]+K/03])S]!/K8$K6T@#6$Q:9
MZS\X  DT#4Y$:ZD3\ 2J8MH5VW 0L%5UX@#:C*=MJZ@P9_IYYI=%-"[GH5\D
M^25" XW.FL%;Q)@XQV?HBO]+UA)L$E&:/4MDG/AEEKTT!(+)4&U!;=W50:.-
M3IA^OH[2\7;RKA_*Y^W]U>8C55N&P>70H&HXFV<>4?UUH5\8N7<C>B,-#GSW
MN<,;%BB[ ?\W$O,X+*R!\<ZV^A-02P,$%     @ LXE]5"V/G:,@ @  6 4
M !D   !X;"]W;W)K<VAE971S+W-H965T-#,N>&ULI91M;],P$,>_BA40 @DU
MJ=M"-=)(Z\H$+R:5=<!K-[XTUAP[V)=E?'ML)PW=0\LDWL0^W]W/_[-S3EMM
M;FT)@.2^DLHNHA*Q/HMCFY=0,3O2-2CG*;2I&#K3[&);&V \)%4RIDGR(:Z8
M4%&6AK6UR5+=H!0*UH;8IJJ8^;T$J=M%-([V"]=B5Z)?B+.T9CO8 'ZOU\99
M\4#AH@)EA5;$0+&(SL=GRZF/#P$_!+3V8$Y\)5NM;[WQE2^BQ L""3EZ G/#
M'5R E![D9/SJF=&PI4\\G._IEZ%V5\N66;C0\J?@6"ZB>40X%*R1>*W;+]#7
M,_.\7$L;OJ3M8BF-2-Y8U%6?[!140G4CN^_/X2!AGAQ)H'T"#;J[C8+*%4.6
MI4:WQ/AH1_.34&K(=N*$\I>R0>.\PN5AMA)W@H/BEKR]85L)]ET:H^-Z;YSW
MC&7'H$<88TJNM,+2DL^* W\(B)V@017=JUK2D\05Y",R&;\G-*'C$[S)4.4D
M\";_JG)T C8=8-, FQZ!;5QC\$8"T07A>_!SIW8:\^;5G":33^1_1W]$_I.0
M2V$LDF\-,PAF\+\FR2B9SY[8&\BUXD_"'P9WUDTIS,LB+W5CL'Q1Z.,ZO*[)
M])'YW'7%!W][!687>MJ27#<*NQ]_6!V>C?.N6_Z&=V_.%3,[H2R14+C49/1Q
M%A'3]7%GH*Y#[VPUNDX,T](]?6!\@/,76N/>\!L,CVGV!U!+ P04    " "S
MB7U4G]U(B;P)  !R)   &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6S5
M6FMSV[@5_2L8-^G$,XB--XC4\4SLM&EFFFXFWMW,?J0E6&9#D5J2BN/^^AZ
MD@CZH;4=)]E^L$E!P,7%Q<4Y]Y ZN*B;3^VY]QWY,B^K]N7.>=<M7NSOMY-S
M/\_;O7KA*WQS5C?SO,/'9K;?+AJ?3^.@>;DO&#/[\[RH=@X/8MO[YO"@7G9E
M4?GW#6F7\WG>7![YLKYXN<-WU@T?BMEY%QKV#P\6^<R?^.Z7Q?L&G_8W5J;%
MW%=M45>D\6<O=U[Q%T<F](\=?BW\19O<D["2T[K^%#Z\G;[<8<$A7_I)%RSD
MN'SVQ[XL@R&X\?O*YLYFRC PO5];_T=<.]9RFK?^N"X_%M/N_.5.MD.F_BQ?
MEMV'^N*??K4>'>Q-ZK*-_\E%WU?K'3)9MET]7PV&!_.BZJ_YEU4<D@$9NV6
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
M0XIR:!LIY6.+(90MU\601,<[B2%M8I')1Y6G50&.D5/I GA0N@B82/4DMEM
M>9EL="A@- .DA ?:WT\-Q7H[/-_5D*7?1.V$X^["1N-/;'FWI#?OEO2=WRVM
MBOB6 /DK!.CT$B#^'R#]S"/]\\5Y 8M^=NVE5O]R:?L\CPVZO]W"3NOOX].H
M",/'^26HB+QM@2C3-.V@@IS4U(Y4$/(P( -HAQSEY_D\'T:(\$P>T**&\QL>
M0T%V<RW)+U41R/ND WLGZL "8%UX]Y":<3Q4QG8MUS8!CR4'G,UG/IZ4@4^!
M/GW31=&=DY^.GQ_]^G9C4;'P5&@X)XKKT5.J877)>ZKDI UR;J"L&QT+N="_
M-0ZU2&#R%S]@0]<B-_4MU")]W10HX\3#-P01.-XLZF;UWGGGX\GQSNXX :YN
M:*1$; UVS9+WOID@YL$03L<DK=&:VWPX.=[8DN;I<,^>WNAW7?F;"Z5-G%.4
MQ3ZS$8VY(/C"J[V'^'J/N?FP$JZ>;H$=LX$=<V?8*>MJ]KQ$<3==@R6 )X&<
MO/%Y>Q/B;)_BL1'GP3!C^K)B5!CAO*G < HT@:VX"6I8?)PW-!F4,!I$:6^!
M&JB,*\]#1?^,.:D!$\X='OS>5 '=M,7[R>] D!RS^&N7EL2:M?])R*9U\X.:
M5_WO2(;N_:]QWN7-K #OEOX,0]F>!7DT_2]<^@]=O8B_*CFM.V1BO#WW.210
MZ(#OS^JZ6W\($VQ^9G3X/U!+ P04    " "SB7U4)]D6 ,(#  #<"0  &0
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
M;&#LK<$/BENY-P;CR9+S9S.Y249.QPC"#&-E&(C^O. ,L\P0:1F_*TZG/M(
M]\<[]FOKN_9E223.>/:3)BH=.9$#":[()E/W?/L-*W]ZAB_FF;3_L"UMPZX#
M\48JGE=@K2"GK/R2URH.>P O/ 'P*X!_"#AU0E ! NMHJ<RZ-2>*C(>";T$8
M:\UF!C8V%JV]H<S<XD()O4LU3HTG<<PW3%&VAH)G-*8HX6R.BM!,GL-G>%S,
MX>S3^=!5^C #<>.*>%H2^R>(/1]N.5.IA"\LP>0]@:M5UE+]G=2IW\HXQ_@2
M N\"_([O-0B:_3N\TR(GJ",76+[N";Y%RH4"A2+7:5-P295LBE))$EH2\Z1>
MQOU^$/E>.'1?]L4?VPW\?B\:!+7=.Y7=6F6W5>6\D@8I9@E0!OKAZ]1F.O?9
M<Y/>DJZWIR/L=LRO64>OUM&SP."$CNOJV-E&"&3Q&SP(PB0IW_)776W@[#N7
M\OP"EF@DP@-YA:?)4BJAC7ZUW%=8*PA;(_$_"IH"%!X%*/![@^[!=1Y;A5'D
M1<U![-<N]%M=F*%0=$5CHA#X:I=V\'2+^1)%6Y"B^H3H(Y(Z.O*N?Y D912B
MHZ2.>BW)-*A5#CXVJ0='.OQ&'>Y>(<U1K&U_D6!+9%FHZM6ZA4ULY3Y8G^K6
M5G:BOS1E7[PE8DV9A Q7FK)SV==1%&6O*2>*%[9<+[G2Q=\.4]V>41@#O;_B
M7.TFYH"ZX8__ %!+ P04    " "SB7U47:G_4\\"  "B"   &0   'AL+W=O
M<FMS:&5E=',O<VAE970U,"YX;6S-EDM/XS 0Q[^*%>T!I&[S:OI ;:72[@H.
M2 @$>T![<)-)8^'8P79:^/9K.R$$V@8.N]+VT/@Q__%OQIXXTQT7CS(#4.@Y
MITS.G$RIXLQU99Q!CF6?%\#T3,I%CI7NBHTK"P$XL:*<NH'G#=T<$^;,IW;L
M6LRGO%24,+@62)9YCL7+.5"^FSF^\SIP0S:9,@/N?%K@#=R"NBNNA>ZYC9>$
MY, DX0P)2&?.PC];^IX16(M[ CO9:B,3RIKS1].Y3&:.9XB 0JR,"ZP?6U@"
MI<:3YGBJG3K-FD;8;K]Z_VF#U\&LL80EI[](HK*9,W90 BDNJ;KANPNH XJ,
MOYA3:?_1KK;U'!274O&\%FN"G+#JB9_K1+0$_N"((*@%P5<%82T(;: 5F0UK
MA16>3P7?(6&LM3?3L+FQ:AT-868;;Y70LT3KU'P1Q[QDBK -*C@E,0&)OJ,E
MEAG"+$&Q:<!32;:8 E,2G:Q 84+EJ;:ZNUVADV^G4U=I$./.C>M%SZM%@R.+
MKB#NH]#OH< +_ /RY=?EWGNYJ\-O<A T.0BLO_"(/Q-MKXKYQUNH/70#4@D2
M*TC>$O)QK"5 #XNUGM0'\W<'5-A A19JT 'U'@<KO:00+V:O[C$MX5#B*Z=#
MZ]24\'8^&H7CP!].W6T[P_MVDV 4C2=A8_>.>M!0#SZE[J$[1I@LA<[1(C>G
MZQ!HY2=J@XX]\SL,$#4 T>=I6WRR41= $W3)D'X1Z#)GZ!RSQT.,T1YC&/H=
MD,,&<M@)N8*"2Z)!,@-"&$IKD/41D.$>R'#0P3%J.$;=R0*A2$IBK #Q5+_]
M+!9ZN()\#:+K%(^;%<;_3VE-&JC)ORBMR?Z)_; )56E-]DIK''5LEN^]O:J]
MOWML:G]ME. @BMNZ0,SM?87%1I<PHI!JI=<?Z:A%=2%6'<4+>Z>LN=(WE&UF
M^B,"A#'0\RGGZK5CKJGFLV3^!U!+ P04    " "SB7U4F_3UF0D$  #"#P
M&0   'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6RM5UV/HS84_2L6ZDJ[4CM@
M\YE5$FF2M.H^I!W-='<?JCXXX!!K %/;)+-2?WQMPT ^"$DT\Y)@<\^]]US;
M!]_QCO%GL2%$@I<\*\3$VDA9?K9M$6](CL4=*TFAWJP9S[%40Y[:HN0$)P:4
M9S9RG,#.,2VLZ=C,/?#IF%4RHP5YX$!4>8[YCQG)V&YB0>MUXI&F&ZDG[.FX
MQ"EY(O)K^<#5R&Z])#0GA:"L )RL)]8]_+Q G@88BV^4[,3>,]!45HP]Z\&7
M9&(Y.B.2D5AJ%UC];<F<9)GVI/+XMW%JM3$U</_YU?MOAKPBL\*"S%GVG29R
M,[$B"R1DC:M,/K+=[Z0AY&M_,<N$^06[VC8(+!!70K*\ :L,<EK4__BE*<0>
M )X#H : C@'>&8#; -QK 5X#,*6V:RJF#@LL\73,V0YP;:V\Z0=33(-6]&FA
MU_U)<O66*IR<WL<QJPI)BQ24+*,Q)0+\ A94X#3E),62)&IYMZ2H"/BX(!+3
M3'Q2%E^?%N#C3Y_&ME1):%=VW 2<U0'1F8 0@24KY$: 7XN$)(<.;)5]2P&]
M4IBA08\+$M\!%_X,D(-@3T+SZ^%.#WQQ-1R.!MBX[8*XQI]WQM]?3.(,/-8E
M[RMO#0\,7)_J[30(HL#U'32VM_NT3PU#%* (HJ U/,C0:S/T#-(]D^%<+1]7
MYU4 6H"2,[5/A!A@[K=^_4'F?U3YBG# UB#!/P3 :ZE&,2N4))5&(U8T4YA4
MO>+$O* )X6I_EEA(D/17:SBDYYM8 \D';?+!H*<9WF ER.#O)=$L_AEP&;8N
MP[?MA/!D@9'GN-#WPJ.=4!OZ^X8P\#WHN_T[(6HSC&XB#?X#:G,(I2.)$8[O
M6"_A#:49M8%';RK-?'12&HA"QW'Z^4*G4TMG,/"2%C2O\FNXP#T)AN]ZH"#J
M/*-W/5*9_AP?BW*CZL.17.?228*= L)A"5SBEZN+W(D6?%_5@IULP??5K:$B
MOU6N8*=7<%BP'@B/22'5W0[\N59G- $+LI*B[S!=\ 3O'.=#WX?S=MPAETXH
MX;!2/II[27M/N6;?=!('AS7NH@HW^ ,91M#Q1GOJVM2QSW+D(S<\ITN='L)A
M09Q5V?,M_%&G>&A8\2[R;_ '7Y<@<IPH&!WQ[[/T7(A\[\R-!'42BN!@ED^$
M;VFL[JZWU*"3430L;I=K@$Z803>*O,@__A3W6:*1&T;^Z$P-.ME$EV2SJ-9*
MX2JN;_.W%*(34>2]L1#>R1;WG!!%Z/@L]!A"Y"'?]>%1'>R]YB8G/#5-H@"F
M;:F;A':V;43O3?MU-#]3#6K=3G9NZNYVB7E*"P$RLE8NG;M0+0^O&\9Z(%EI
M6J@5DZHA,X\;U603K@W4^S5C\G6@ [1M^_1_4$L#!!0    ( +.)?534PT!
M'P8  -X>   9    >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;+U976_B.!3]
M*Q;:E6:EV1)_!,*((A5H9V:E[E94G7E8[8,;#%B3Q(SCE,YJ?_PZ(6!"C)/2
M:N9A2H+O\;G7EW.O[>%&R&_IBC$%GN,H22\[*Z76'[K=-%RQF*878LT2_<U"
MR)@J_2B7W70M&9T71G'419[7Z\:4)YW1L'AW)T=#D:F()^Q.@C2+8RI_C%DD
M-I<=V-F]F/'E2N4ONJ/AFB[9/5,/ZSNIG[I[E#F/69)RD0#)%I>=*_CAAO1R
M@V+$%\XVZ<%GD+OR*,2W_.'S_++CY8Q8Q$*50U#]YXE-6!3E2)K']Q*TLY\S
M-SS\O$._*9S7SCS2E$U$])7/U>JR$W3 G"UH%JF9V'QBI4-^CA>**"W^!YMR
MK-<!898J$9?&FD',D^U?^EP&XL  P1,&J#1 ;0UP:8"/#08G#$AI0(X,(#EA
MX)<&?EN#7FE0+&9W&ZPBTE.JZ&@HQ0;(?+1&RS\4RU58ZP#S),^L>R7UMUS;
MJ=%5&(HL43Q9@K6(>,A9"GX''X68;W@4 9K, 4\439;\,6* IBE3*7@W98KR
M*/UMV%6:0X[4#<OYQMOYT(GY(+@5B5JEX#J9L[G%?M)@CQP 7>W\/@)H%X$Q
M<B+^D247 'OO ?(0?+B?@G>_V/R:N%&F+-0HL EEVA[%*U&V2<"D!>W:C7:5
M+2\ +-$LYC<-@:$Z,(C8S"N!QOM4PP4>.8&W2RI;<+>6O<(R%\.G$?0(\CV(
MA]VGP_A9!F)<'5@A1_;DB)/<Y^,D?P\2IFQ4MSC^ 0-,/-CK]8Z8DAI3 DF
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
M,P>:@G(3[/-,2K/KN #ME<_\%U!+ P04    " "SB7U4 [7C?RH'  "''P
M&0   'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6S%66UOVS80_BN$L0$MT,42
M2=ERD01(G'3KL*Q!VJX?AGV@)=HF*HD>2<5)L1^_(^68?I$I=S"P?FAL\^YX
M]]SQN1-UOI3JJYYS;M!3653ZHC<W9O&VW]?9G)=,G\D%KV!E*E7)#'Q5L[Y>
M*,YRIU06?1Q%@W[)1-6[/'>_W:O+<UF;0E3\7B%=ER53S]>\D,N+7MQ[^>%!
MS.;&_M"_/%^P&?_(S>?%O8)O_;657)2\TD)62/'I1>\J?OLNB:R"D_A#\*7>
M^(QL*!,IO]HO[_.+7F0]X@7/C#7!X,\C'_.BL); C[]71GOK/:WBYN<7Z^]<
M\!#,A&D^EL47D9OY12_MH9Q/65V8![G\A:\"2JR]3!;:_8^6*]FHA[):&UFN
ME,&#4E3-7_:T F)# <<'%/!* 1^K0%8*9$?AH$MTI4"/W2%9*20["C$]H#!8
M*0P<]@U8#ND;9MCEN9)+I*PT6+,?7+J<-@ L*EM9'XV"50%ZYO(JRV1=&5'-
MT$(6(A-<HY_059X+FWA6H/=54[ZV#%[=<,-$H5^C&:R("MV)HH %?=XWX(NU
MV,]6^UXW^^)#^]:S,Q3';Q".</3YXPUZ]</K%BOCL)5?676&,.VR<A.V<L.S
M,T0:7^*5%0BPQ=#M\88"[KP[VDH\VE;O0W;7*<;K%&-GCQRP!R<0SE>%QK52
MO,J>T2?%*LV:D_TSD ]Z]9O4^O4;-.&0:XX^L2?TY]5$&P5"?P4\(&L/B/.
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
MEO0&L4ZCJ.M+W5%\:Y_H-5?ZP;?-0I=D$,9 S^><JT/'+- 6^>EO4$L#!!0
M   ( +.)?53O#_*_U0(  *$)   9    >&PO=V]R:W-H965T<R]S:&5E=#4Y
M+GAM;*U6T6[:,!3]%2O:0RNMQ(X3DE: M(*F56JEJJSK0[4' Q>(FL29;:#]
M^]E.""F$C*E]2>SXGI-SC^UK]S9<O,@E@$*O:9+)OK-4*K]R73E=0LIDA^>0
MZ9$Y%RE3NBL6KLP%L)D%I8GK8=QU4Q9GSJ!GO]V+08^O5!)G<"^07*4I$V_7
MD/!-WR'.]L-#O%@J\\$=]'*V@#&HQ_Q>Z)Y;L<SB%#(9\PP)F/>=;^1J2'P#
ML!&_8MC(6AN95":<OYC.S:SO8*,($I@J0\'T:PU#2!+#I'7\*4F=ZI\&6&]O
MV;_;Y'4R$R9AR).G>*:6?2=RT SF;)6H![[Y 65"@>&;\D3:)]H4L10[:+J2
MBJ<E6"M(XZQXL]?2B!I )]H,\$J =RJ E@!J$RV4V;1&3+%!3_ -$B9:LYF&
M]<:B=39Q9J9QK(0>C35.#6ZR-62*BS=T-@+%XD2>HPOT.!ZALR_G/5?I7YA
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
ML8494&J(M(RWGM,;4AK@X7K/_MW6KFM980DS3G^12M5C[\Y#%:QQ1]4SW_V
MOI[4\)6<2ON/=GULX*&RDXHW/5@K: AS3_S>G\,!(,S. *(>$!T#DC. N ?$
MME"GS)8UQPH7N> [)$RT9C,+>S86K:LAS-SB4@F]2S1.%0NA&T*HCQO44LP4
MPJQ"\-:15M^4LTK.I!*=.W7"4"OX1H"4Z"N:5!4Q;DS1(W,=98*NYJ PH?):
MA[PLY^CJRW7N*RW6I/3+7MC4"8O." LC],29JB7ZQBJH_B;P=95#J=&^U&ET
MD7$.Y0C%X0V*@B@\(6CV[_#@@IQX./G8\L7__>0O)$^&Y(E-GIQ)/L,M4?K:
M9KQIB#(9Y:DK<B29)3'S8%M$MX'YY?[V1/9TR)Y>SGY8V"-#BWU++2@NH3*N
M)8@M*>&4*,>='HC*DB2*DD&3N\WTD_8P2^,T"$]KSP;MV47M<]#3LB2VTT^I
MRSZE3>_OTRB,C^1]CLOB.$WN[H_D^0?O=@-B8T>>U+W1,>5Z?_ .4W5BA\F1
M?ZJGK1N.?VC<J'["8D.81!36FC(8W>JC$V[\.4/QUDZ0%5=Z'MEEK;\8($R
MWE]SKO:&23!\@XK?4$L#!!0    ( +.)?50EL$;2%@@  !<F   9    >&PO
M=V]R:W-H965T<R]S:&5E=#8S+GAM;+5:;6_;.!+^O/LK"&,/V 426R3EMT42
M($W2;KIY\<7;W@&+^T#;C,U;271%*HZ!_O@;2K+HV!2M[M5!TU@R9^;AS/"9
M(:6SE4S_4@O.-7J-HT2=MQ9:+W_M=-1TP6.FVG+)$_CF6:8QTW"9SCMJF7(V
MRX7BJ$."H->)F4A:%V?YO5%Z<28S'8F$CU*DLCAFZ?H=C^3JO(5;FQM/8K[0
MYD;GXFS)YGS,]:?E*(6K3J5E)F*>*"$3E/+G\]8E_G4<#HU /N*SX"NU]1F9
MJ4RD_,M<W,[.6X%!Q",^U48%@S\O_(I'D=$$.+Z42EN532.X_7FC_7T^>9C,
MA"E^):-_B9E>G+<&+33CSRR+])-<_<;+"76-OJF,5/X_6I5C@Q::9DK+N!0&
M!+%(BK_LM73$E@#!-0*D%"!-!6@I0)L*A*5 V%2@6PIT=P1P6"/0*P5ZNP+]
M&H%^*=!O"FE0"@R:"@Q+@>&. *T-7+")7-#4!JZ"O1MMW*L3V80;-XXWW@0<
M-XXXWH0<[\6<UHEL@HX;1QUOPH[WXEXKL@D\WHU\O<@F]'@W]O4BF^#C//J=
M8O7F2_^::79QELH52LUXT&<^Y/R1R\.*%XFANK%.X5L!<OKB6JBI3+1(,CY#
M0* I,PRDT"FZYZ]B*M$RE?\%6@+Z> %>7 ++Z5/TP%(S\(4K]/,UUTQ$ZA?T
M$^H@M6 IW!0)^I0(K4[0G$7FZEY$D=%[UM$ VICN3$N [PJ I ;@>SYIHV!X
M@DA R*?Q-?KYIU\<6JZ^0<O]OQ]JM%S[M5QF\S8B@UQ+4(_EYANTU&-Y[]?R
M,4M 2S&CP"'^H0D(8L1Q#X+DT/";7\.8+]N(!CD 7#^-VP:!*9R!PWJ7?O1K
MN6=K1'&NA)9*;#8ZU/W>!%3N6^S)N;O&H *WA^_]"J[YM%UJ(+@>QD-S+9ZD
M?6RLI7+)@CGTC)K'>^ 0_^>!K&=)!<,E_M0@ZTOQGD-\W!P\>2O> =ZMR)=4
MY$MR?;1N"4'C.LLBCN0SNDV 3;6A5X7^O(.!Z%;S6/W'8X969FAN)JPQ\Y#%
M$YX:(S.V5DA+:&PGL= H$DJ;VXE,3E,^E2] _Q. PU^ADU; XS&;<1<U^>V1
M(#?D01Y6R$.OICNAQ3RO2 B:;AUQXY\3=%/@<Y6!0E\OUV?:_)<+3/M!_G/6
M>7% Z590NEXHM_&2B=381Y%4"@&D2";STPBJX PQI;AV,<U#=P\0]<'I57!Z
MWP0'-CV;BEU@@0H^<]=V%Q'U]E .>[0;6I#%9(IAW>W)T"X>A,0]F7XUF;YW
M,B.V+A(?=B_H<9G'^^:5IU.A^,Q54_K[4?8Y=5#A&'AQC$V]0*-43#GZBKP5
MY.-@'X+;^+ R/O0:OQ>)B+,8_7G/S7+U+7P<V.XN.";#X*TV$OM7JDG"JSS;
MYCR9KD_0-8MAKZS06&:PVSQ!GUF4N9;LNU+SMBN[WG!BRZ^8>%&]Z6X?;7?[
M=;-61F5W>VV[6Y\[+.-B>E2_6X+$?H;\SCR ]_G3202.<13W".[71,RR+/;3
M[.4\8PHV&^A)*I8*J%7C]F5[U+YMFYM7[<^-UH=E4=P[:IPLPV$_Q=U\R81>
M0VCT0LZV3)V@QU7"4[402S0"QH-;L&J<H?$;Z ;M(/B'#ZME0>RGP9*!V3SE
M><%MY')+<WAX3)<3RWTD:%95_I#H)M&\*BV7FXFY=@:ETOV"[<YL8AF2^!GR
M87R%3'8W\2;9ZB"/VD(2RVCD0!,I$T,BJ82-?#('6^!0L.;.7S19HQV!8IAK
MPW# <- .O7E-+%<2/U?^(36+T&>IMR>PC?KRV60)5#%HA/.SW,=G="=9XJK_
M!VR1[H'E2"PE$C\E%K"W8 (JZ_1J'K>0V/!O"D23 L]?2:@,R=JUQ3I@;SAL
M#X=>Z)9>B;]+'7.V8L:G3]RX%*"K6"JAH-XJ!H.+UGX4L22/ _0,:U.2IUPI
M$Z,KMF130YM?D7L#_8'L=Z0XV"E6=P<&O9V;973B)]S+E#.SZNY8,@. SLWP
M8ZECN&6:!.V:3I%8AB9^AO[_J\D! P>K";%\3_Q]+> 0 %(D:+40TP4"4E Z
MS8HG'7$&F3OA<#->1EP[N_T/!PS0'HJ!:!:^#2>U58,>J!H%W"=>KB,H'D7C
M"/0 @;YG GPJ-DEK;EU^@;X*YN."?L 8[:,U9[NT^!:Y+3#47V"J>F=ZP,AD
MI?E-S;,>91)U!8MKP:-9_OVLKN$M\I;N]^0$8T\=I+9B47]/?AG++/$>.[@.
M9DNE;S<). R[I/MVM=\X1F+:IY3"\!KL6P<I_EKTS1O54E_CG2JUQ8SZ"\Q6
M/0!7[A:UJ@SH16KV7TU:G_$!BP=+&K4EC?I+S(>,I;!\.$>LR(9TL]Q,;JI,
M+8N'J:Y3:;I_HM+U.-36*NJO57O]&9#Z=]F-4%M2:/^HYX&V?M CUX^G P:@
MA^CY<\76#^JG=U=<WHO4=&X+!BU%@PB$EOW#HYZ7A):L0S]9'[TS*NUWWRP3
M]QH)+7>'?NYVQ6(,# YUIGDP+-N&1SU$";=.F?W,=OQ@A,V#84DT]).H*QA_
M9^L>6HH,CWI:$EHB#/V]]7?=J1VP=7"[$UI:#?VL]\2718-@'"0,[--IL0U#
M$8!#\*UI=)P@]\^3NWU/HQ!:_@S]_+E;^<W3$U$< 4(B:Q>:WP^HS)^#]4]^
M_.$'\]36Y;K.UAL)YI6I>Y;.1:)0Q)]!8]#N0VJGQ5M(Q866R_PEA8G46L;Y
MQP5G,YZ: ?#]LY1Z<V'>>ZC>!;OX'U!+ P04    " "SB7U45P5W(<T#  !<
M#   &0   'AL+W=O<FMS:&5E=',O<VAE970V-"YX;6S55TV/VS80_2N$L(<-
MX*Y$R;*DP#:0]:+M @EB9)OT$.1 2[3-AA(5DK*]0']\AY16_I"L; \]]+(6
MI9GA>V^&,]SI7LCO:DNI1H><%VKF;+4NW[JN2K<T)^I.E+2 +VLA<Z)A*3>N
M*B4EF77*N>M[WL3-"2N<^=2^6\KY5%2:LX(N)5)5GA/Y?$^YV,\<[+R\^,0V
M6VU>N/-I23;TB>K/Y5+"RFVC9"RGA6*B0)*N9\X[_':!Q\;!6GQA=*].GI&A
MLA+BNUD\9C/',X@HIZDV(0C\[.B"<FXB 8X?35"GW=,XGCZ_1/_5D@<R*Z+H
M0O _6::W,R=V4$;7I.+ZD]C_3AM"H8F7"J[L7[1O;#T'I972(F^< 4'.BOJ7
M'!HA3AR :+^#WSCXKW4(&H? $JV165H/1)/Y5(H]DL8:HID'JXWU!C:L,&E\
MTA*^,O#3\P>F4E%H5E0T0U <DAAU%?H%?: 'E@I42O$72 [2["#G)610H]L'
MJ@GCZ@V8?7YZ0+<W;Z:N!C0FIILV.]_7._O7=J;I'0KP"/F>CWO<%Z]W]\[=
M7="@%<)OA?!MO.!*O,<B%3E%3YIH:DB.T#WAI$CAE3U.I,C0NRQC1A["D=&-
M"U5)JM#JV2Q+H>#];U)4I1HA",>KC!4;=*;PQZ/"7]\# O0(NZEO _B#%G]@
M\8^OX/]#:-B>*$6U0F*-LO[$]N6I#CRQ@<VQW\U]/\!)XD=3=W>:D3[#212%
M<=P:GF$?M]C'@]BO2?3W2Q$NFR)\.!;A@&1ANVWXOTSYI,4_&91M0=2V+Y^U
M5WB2IBCTO'%\D<VN&0['./#Z<QFUH*)!4$M)2\(R1 \P:11(9504>DLEM#,I
M3?NHB[0/>=2!%/M1'%P [[&*D^A*#<8M[G@0]Q?"*XI(ED'*-#D <$E3RG9D
MQ2FZ+: <X% 1#F//5@@L;I))-,(XM QO CP9^3@:@9LJJ1U._+FW+<8=^,'8
M2[!WP;)KAN&P)0GNYYFT/).?Y,<T _T\0B74>EWD]$?%ROH$ -&^7IQTP(23
MV.]'@KWC[/$&L;R'S7L'A]?9SL? /DXN:_@UEN?@3@8C'@3WT=;L]5IMW,\2
ME/AQ!V'7+ @2+[D"[SBNL/]?]?LF<OCSAM]K.=3Q\7%<X=?,*\[(BG'HL/1?
MDPAZY/?P&%]2Z+5+@N *@>/,PL-#ZZ)AV*-SUB-Z48\[(Q3[41*%'>6[AM!A
MH,%<P'9/KG[FWOV!R V#4</I&AR]NPB(R_HJ6R^T*.UM<"4TW"WMXQ:N_U0:
M _B^%D*_+,P%L_V'8OX/4$L#!!0    ( +.)?50APSXTV (  /4'   9
M>&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;-55WV_:,!#^5ZQH#ZW4-2&$'ZT"
M4H%U0VHW5-3M8=J#20[PZMB9[0"5]L?O[(24ML#ZLH>]$-_Y[KOO[LQ=O);J
M02\!#-ED7.B>MS0FO_1]G2PAH_I<YB#P9BY51@V*:N'K7 %-G5/&_3 (VGY&
MF?#ZL=--5#^6A>%,P$01760958\#X'+=\QK>5G''%DMC%7X_SND"IF#N\XE"
MR:]14I:!T$P*HF#>\ZX:E\.NM7<&7QFL]<Z9V$QF4CY889SVO, 2 @Z)L0@4
M/RL8 N<6"&G\JC"].J1UW#UOT:]=[IC+C&H82OZ-I6;9\[H>26%."V[NY/H3
M5/FT+%XBN7:_9%W9!AY)"FUD5CDC@XR)\DLW51UV'!KM PYAY1"^=(@..#0K
MAZ9+M&3FTAI10_NQDFNBK#6BV8.KC?/&;)BP79P:A;<,_4Q_Q'0BA6&B@)3@
MVU#45E>3]^2:"2H21CD9B_*UV+*?C,!0QO4I6MQ/1^3DW6GL&R1BX?RD"CHH
M@X8'@C9"<HM!EYI\$"FDSP%\S*!.(]RF,0B/(HX@.2?-QAD)@["QA]#P[>[!
M$3K-NJI-A]<\@#<6B<R 3 TU@$_>G)$!Y5A-5+F_)A4IN4I39DN*!;9-X%(7
M"C29/5HQEQKU'Y4L<GV&#4AXD3*Q(,_:]>6I7=]OD $98S3]XPC_J.8?.?[1
M ?Z?D2,2TF2N9$;2_6]D7YE+V+:#M0-DU8\N@C",FK&_VL.G5?-I'>5S*.W?
MY!8V+)%DHN1/' QD!"L<3+FM^9$RM.NP[?^RC9V:?^>?M''0>=7&L-6)@LY%
MW<:RW:5=ZZWM[M:\N\?;#;B1</2XB0,;W%@:]M'LOGYMK:CU@N-?C$J"_LX$
MS4 MW&+1))&%,.44JK7U[KIR(_N%?H [K5Q!3S#E0KRE:L&PQQSF"!F<=[!L
MJEPRI6!D[N;T3!J<^NZXQ+T,RAK@_5Q*LQ5L@'K3]_\ 4$L#!!0    ( +.)
M?50B)P\PE0,  &(0   9    >&PO=V]R:W-H965T<R]S:&5E=#8V+GAM;+U8
M6V_:,!3^*U:TATTJ3>S<8 *DCJK;I&VJUEV>W6# :F(SVY1NOWZVD^8")JT$
M+0_$3L[Y?,['.5]LQELN[N2*$ 4>BIS)B;=2:OW>]V6V(@66YWQ-F'ZRX*+
M2D_%TI=K0?#<.A6YCX(@\0M,F3<=VWO78CKF&Y531JX%D)NBP.+O!Y+S[<2#
MWN.-[W2Y4N:&/QVO\9+<$/5S?2WTS*]1YK0@3%+.@""+B7<!W\]08ARLQ2]*
MMK(U!B:56\[OS.3S?.(%)B*2DTP9"*PO]V1&\MP@Z3C^5*!>O:9Q;(\?T:]L
M\CJ96RS)C.>_Z5RM)M[0 W.RP)M<?>?;3Z1**#9X&<^E_0;;TC:-/9!MI.)%
MY:PC*"@KK_BA(J+E *,##JAR0,]U""N'T"9:1F;3NL0*3\>";X$PUAK-#"PW
MUEMG0YGY&6^4T$^I]E/3STQAMJ2W.0%82J(D&( 9E_J*V5R3G&V*38X5T>."
M"T7_8<O^VTNB,,WE.VW^\^82O'WS;NPK'8]!];-J[0_EVNC VI<D.P<A/ ,H
M0-#A/GN^>]!U]S4+-16HI@)9O/  GDF[!R:L84(+$QV N:*,*C+XHJMS#EKT
M7EAZS\!'P:5TD57")A;6=-_]-$Y'@?Z,_?LV*T_;=>*.ZKBCWO0O#OS6/93$
M-71\%"7MI2\.+EVR5*X4M[(?H' X#,-HAR:'(4PBF"2IFZ>D3B;I36:O8\X
M(\H5:K(701@%.H!D)])]NPA&.J/0'6A:!YKV!OJ-LT'&BS51.M*E($2K;U^!
M#VO<X3%],JIA1B_3)Z,]NN+0T29/FG6BAD$CF,&I^P2VU!B^6J=42W4Z(!KI
M7AGM,.4TC#J&W70:186H-YT? L\)8+@@LH^>1EIA>$SIP4;K8/0RQ5?AMKE"
M:> HOV<8=F-OQ!3&)R_ 1MQ@O[J=M #WA6V01BZN'(9QTL-5(X&P7P-G=@=%
MS%8ON\OYLK<,&P&$1RD@;"00OI &PGUU"Q,7LT_:=;=*C0JBDZL@:E00O9X*
M(H>X.:ER&2+8PU5K7]FO@E<XHSE5?_6^G>FCD7D-@XPS)?09IJ\@4:.+Z"A=
M1(TNHA?21>20.^32Q6<8=F-O=!&=7!=1HXOH]72Q6BKIZ.(HBJ)XERN'8832
M-!WN<.6W#H#F]/T5BR5E$N1DH3V#<W-<%>6!MIPHOK9GPENNM#[:X8KH=[4P
M!OKY@G/U.#''S/IOA>E_4$L#!!0    ( +.)?52'O$R*4P(  '\&   9
M>&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;)65:V_:,!2&_XH5[4,G;>1";E0A
M$A15J[1-J*S;9P,GQ*H3,_L [7[];">-4 FP\8'X<M[W.2=Q3K*#D,^J!$#R
M4O%:C9T2<7OKNFI50D750&RAUCN%D!5%/94;5VTET+455=P-/"]V*\IJ)\_L
MVESFF=@A9S7,)5&[JJ+R=0I<',:.[[PM/+)-B6;!S;,MW< "\&D[EWKF=BYK
M5D&MF*B)A&+L3/S;Z<C$VX"?# [J:$Q,)4LAGLWD83UV/),0<%BA<:#ZLH<[
MX-P8Z31^MYY.AS3"X_&;^[VM7=>RI KN!/_%UEB.G=0A:RCHCN.C.'R!MI[(
M^*T$5_:?')K8.'3(:J=05*U89U"QNKG2E_8^' D"_XP@: 6!S;L!V2QG%&F>
M27$@TD1K-S.PI5JU3H[5YJ$L4.I=IG68/]1(ZPU;<B!4*4!%/I-))22R/]3>
M-E$0=A)S,P.DC*N/F8LZ"6/EKEK@M $&9X S6 W(T/]$ B_PGQ8S<O/AG8NK
M2^CJ"+HZ FL[_-<Z+G@..\^A]0S/>.H,@[X"&U5L5>;0[_,H#9(DS=Q]#RWL
M:.$UVK"/UJBB8UH8QW'23XLZ6G2-%O;1HO^BQ1TMOD:+^FCQ"2U,HR@*^VE)
M1TNNT>(^6G)"\U-/__II:4=++])^E*"[88$@^YCI*=.+ST-''71T$7K/:H9
MONJ.MB9'9W_2O)_? ?N2&9T<W&'H^?KQODO&/>HGIC5_HW+#:D4X%%KI#1)=
MCVS:73-!L;4M9BE0-RP[+/47 J0)T/N%$/@V,5VK^^;D?P%02P,$%     @
MLXE]5"J,&H/[ P  2Q(  !D   !X;"]W;W)K<VAE971S+W-H965T-C@N>&UL
MQ5C1;N(X%/T5*]J59J26Q"8$J "I0-OIJMU%[7;Z,-H'$RY@31(SME,ZJ_WX
M=9R0,)W@H)66OD#L^-QSKX\YQAYLN?@JUP *O<91(H?.6JG-A>O*< TQE2V^
M@42_67(14Z6;8N7*C0"Z,* X<HGG!6Y,6>*,!J9O)D8#GJJ()3 32*9Q3,7W
M,41\.W2PL^MX8*NURCK<T6!#5_ (ZFDS$[KEEE$6+(9$,IX@ <NA<XDO;D@G
M Y@1GQELY=XSRDJ9<_XU:]PNAHZ79001A"H+0?77"TP@BK)(.H]O15"GY,R
M^\^[Z->F>%W,G$J8\.B9+=1ZZ/0<M( E32/UP+>?H"C()!CR2)I/M,W'=CT'
MA:E4/"[ .H.8)?DW?2TF8@^@X]0#2 $@;P'^ 4"[ +3? H(# +\ ^,<R= I
MYUA 4 ""8P'= M U8N6S:Z294D5' \&W2&2C=;3LP>AKT%H1EF1+\5$)_99I
MG!K=)HHF*S:/ %$I04GT80J*LDA^1.?HZ7&*/OSR<> J394!W+ (.\[#D@-A
M,;KGB5I+=)4L8%&#GS;@B26 JVLL"R6[0L?$&O&/4+50&Y\AXN%^34(3._P:
MYBU$^@8>U-5CAT\AW+$37 ._.A[NU<"O[?#+=-5"^##\Q@[_C2:Z=K\._H,4
M[7+-M4V\]J&Y9 E3<'ZG/6B!]A;@9;X O]SI\>A602S_LK#Y)9MOV/Q#Q<=<
M*/8W-<['ES\3UJF9APQ,R,S-7T9=/PB"[L!]V5?MYV&]/MX?]D/&G3+CCC7C
MWWER'O)X TK_*%<"0%N_0O^@>SUO<1JC+_<0ST'8)B<HJ8(32-$MV;IV*<)O
M*1.:J:"-ZFG/T+/90?2[RQ<0>D=$3Q*6:83NV!+JY++3MM%WH$):"NB5!?3^
MFS+T]5AE^B55_P3*8*_:![SWT::!M],H#M[;R["]!A#P:HM$JDCD%+-?.2)N
M6S,?IU+W2(F,#))E9G6&9B!"O<"R2=;&]9DKEJRR;'294A5C1>WV>M/ Y_=;
MGO>K+?7*7K'=7V=7#Q/T3'52:,+%A@OCM+;0E0_BSBE4J,P0!R=5X;J!#WM-
M*E3.BNT>5Z^"MJ:)^0\)XOP!(JKJY['9M7#ED+AW"LTJF\3]=_&M<0,O:?0M
M4GDOL7M@HWCZT!>9/KEF&RMGY94$GT G4CDJ(>^C4P-OT*Q3Y=+$[II_"KH
ME- 8;.$JYR3^*22H[)38_U?^7Q),&GBQ98]W]XZN>J&OS*V$1"%/$Y6?*,K>
M\N;CTISWW_2/\<4$U_1/\<55?J]1A<^O6>ZI6+%$H@B6FLIK=745(K^YR!N*
M;\S!><Z5_A6:QS7H%2"R ?K]DG.U:V0$Y?W1Z%]02P,$%     @ LXE]5,,@
MK.XH!   M1   !D   !X;"]W;W)K<VAE971S+W-H965T-CDN>&ULK5A1;]LV
M$/XKA+$"+9!8(BF)4F$;:)T-&] N0;.V#\,>:(NVA4JB1])Q\N]'2K(D6S3C
M+'V)1>GNN_N.QSM>)GLN?L@-8PH\%GDIIZ.-4MOWGB>7&U90.>9;5NHO*RX*
MJO12K#VY%8RFE5*1>\CW(Z^@63F:3:IW=V(VX3N59R6[$T#NBH**IX\LY_OI
M"(X.+[YDZXTR+[S99$O7[)ZIK]L[H5=>BY)F!2MEQDL@V&HZ^@#?SQ$V"I7$
MMXSM9>\9&"H+SG^8Q1_I=.0;CUC.ELI 4/WSP.8LSPV2]N/?!G34VC2*_><#
M^F\5>4UF026;\_Q[EJK-=!2/0,I6=)>K+WS_.VL(A09OR7-9_07[6C;4PLN=
M5+QHE+4'15;6O_2Q"41/01.U*Z!& 9TJA&<4<*-01<ZK/:MHW5!%9Q/!]T 8
M:8UF'JK85-J:35::;;Q70G_-M)Z:?6(Z!A)<@^H!4"F9DH"6*<@SNLCR3&7Z
M\]L;IFB6RW=:\.O]#7C[R[N)I[1Y ^(M&U,?:U/HC*D;MAP##*\ \A&TJ,\O
M5_>/U3U-NF6.6N:HPL-G\.8[(5BI'$BX1<(54N!&.@2/KT":R24O55;N6 KT
MD1/4Y*RTQ:R&CBIH<^8>9B@*@XGW8'$H:!T*G-3^Y.7R679A"Q8ZV=W6[I=K
MD%<I(LS!N.:KZUV;+S9>-6AXQ"N&$).66KWIX8 _Q"@)(V@/0=1Z'3F]_L3+
M];5BHOA_NQ(-O(=1G,0GO@^E,$[\Q.XY:3TG3L__XHKF+XLU&<::Z#(>)R?^
M#N5@0" AV.YQW'H<O_(D)2U2<M%)TN5Y)^K2H_>-'V>@-03)@%J8((RCDP@,
MQ8(P)'%L#P#TNRKJ7^1XOVB^+.,: T>; V$2GA"PB*$DP.@,@5X;@*\O&;"K
MK1 YX]'!7;1[#=H1*UTJ<!*<TA\*)C'R272&?U?"H;N&]QQ^Q1[B@7<DAJ>G
MT"*%@N1,U8!=S8?!Q76C1\'J9S!L.B2(23 (]U 0!E%">FEY[&W75."+NHJ\
M OOJQJ5C3!_TI[4N?LQ<0[O&8ZJYE8W;$@%/C I;'.;/:.):$P2@T FPD0 %
M(*5/TG5"NOX$W0WJ@@!4F;?3&:D%F96YVT0X]O$;*V^W7C"&X1L7R:Z507<O
MN^F?G=LS9^<8NVLZT-UU+JM87>>![M;S,Q/2;0E6:07((:LB2U(U^W01$*R!
MK#C'-^.NG2%W._L9R?F,B6!,B#4YG]'#XR!V)2?J6AZ"3J0[P;8T2\&OCWHF
M-D.0F7INU88)<&CG'^J[X]^?6;%@XA^7V=[8\=JY W5="[F[UNG=O+XB7@'K
MP6C".QPXH!]C__0.Z/5F2C/0?Z9BG952&UII17],=.T4]8Q<+Q3?5F/F@BL]
MM%:/&T93)HR _K[B7!T69G)M_U,Q^P]02P,$%     @ LXE]5*YV*W"1 @
M\08  !D   !X;"]W;W)K<VAE971S+W-H965T-S N>&ULC95M;YLP$,>_BH7V
MHI76\A0@K1*D)MFT2:U6->OVVH5+L HVLR]-]^UG&T)I'NC>@!_N_O>[,YPG
M6R&?50& Y+4JN9HZ!6)][;HJ*Z"BZE+4P/7.2LB*HI[*M:MJ"32W3E7I!IX7
MNQ5EW$DG=NU>IA.QP9)QN)=$;:J*RK\S*,5VZOC.;N&!K0LT"VXZJ>D:EH"/
M];W4,[=3R5D%7#'!B835U+GQK^>)L;<&OQAL56],3"9/0CR;R?=\ZG@&"$K(
MT"A0_7J!.92E$=(8?UI-IPMI'/OCG?I7F[O.Y8DJF(OR-\NQF#ICA^2PHIL2
M'\3V&[3Y1$8O$Z6R3[)M;*.10[*-0E&USIJ@8KQYT]>V#CT'/S[A$+0.P;[#
MJ0AAZQ#:1!LRF]:"(DTG4FR)--9:S0QL;:RWSH9Q<XI+E'J7:3],;T'70)$+
M,A=5+3AP5$2L2&F62284DK,%(&6E.M=&C\L%.?MT/G%1AS8";M:&F35A@A-A
M_(#<"8Z%(E]X#OE[ 5<S=^#!#GP6#"HN(+LDH?^9!%[@'P&:_[^[-X 3=G4,
MK5XX6,<!H5$G-+)"HQ-"/VJ0%!E?]\Y '2MX(Q-;&?.OOJ1Q%/NA3N:E7X9#
MLR0)DRCNS-Y11AUE-$BY+(3$"P19?839Z$3]^%>Q%^]1'EI%D3\^SAAWC/$@
MX^T;F/YT<Z8R_04ROH&<B*;(@A]%C@]@0C\8^WO(AU9^D%R-P^/020>=#$+_
M%$C+CVJ:')YIG'A^LD=X:';E)4&4[!&ZO>Y1@5S;IJIT] W'YG_L5KN^?6/;
MU=[Z3/?SIOV^R327P1V5:\:5SFNE);W+1)=--@VVF:"H;8]Z$J@[GAT6^DX"
M:0ST_DH(W$U,@.Z62_\!4$L#!!0    ( +.)?518:++W9 (  .L%   9
M>&PO=V]R:W-H965T<R]S:&5E=#<Q+GAM;)54VV[;, S]%<'80PML\2U)+W ,
M-,F&#5BQHD&W9\5F8J&RY$ERT_[]*,GQTMRPO=BZD(?GD"*SC53/N@(PY+7F
M0D^"RICF-@QU44%-]4 V(/!F)55-#6[5.M2- EHZIYJ'212-PYHR$>29.WM0
M>29;PYF !T5T6]=4O4V!R\TDB(/MP2-;5\8>A'G6T#4LP#PU#PIW88]2LAJ$
M9E(0!:M)<!??SD;6WAG\9+#1.VMBE2RE?+:;;^4DB"PAX% 8BT#Q]P(SX-P"
M(8W?'6;0A[2.N^LM^A>G';4LJ8:9Y+]8::I)<!V0$E:TY>91;KY"I\<1+"37
M[DLVWG9\$Y"BU4;6G3,RJ)GP?_K:Y6''(1Z?<$@ZAV3?87C"(>T<4B?4,W.R
MYM30/%-R0Y2U1C2[<+EQWJB&"5O%A5%XR]#/Y-\!<Z#))[)HFX8#UL=03@JJ
M*[+""A,F_$NQ*;^8@Z&,ZTLT?UK,R<6'RRPT2,)"A447<.H#)B<"Q@FYE\)4
MFGP6)93O 4)DWTM(MA*FR5G$.10#DL8?21(E\1%"LW]WC\[02?N,I@XO/9O1
M,T##'FCH@(8G@'XTH##Q8NW+@2UH*Z()%H3(_HX?">>SYM''#MTV\TM^%4=1
M,LS"E]WL'#&+KJ.;46_VCORH)S_Z'_(=<R7K ^KXF$JF"WP33+10;N^E."IJ
M=, VO4Z&XSU-AU9Q<A6/TCU-X4[?U*#6;IQH4LA6&/_^^M-^8MVY1MT[G^(D
M\X/G+XP?@_=4K9G0J'6%D-'@"JDI/UK\QLC&=>=2&NQUMZQP&H.R!GB_DM)L
M-S9 /]_S/U!+ P04    " "SB7U42\+5X]L"   U"0  &0   'AL+W=O<FMS
M:&5E=',O<VAE970W,BYX;6R-EEUOVC 4AO^*%>VBE=;&'_FL &D%59O4356[
M;M<&#%A-XLQV2OOO9R<AT,8!;HB=^#W/.:_)<49;(5_4AC$-WO*L4&-OHW5Y
MX_MJL6$Y5=>B9(5YLA(RI]I,Y=I7I61T68ORS,<01GY.>>%-1O6]!SD9B4IG
MO& /$J@JSZE\OV69V(X]Y.UN//+U1ML;_F14TC5[8OJY?)!FYG=1ECQGA>*B
M )*MQMXW=#-%Q KJ%7\XVZJ#,;"ES(5XL9,?R[$';48L8PMM0U!S>653EF4V
MDLGC7QO4ZYA6>#C>1;^KBS?%S*EB4Y']Y4N]&7N)!Y9L1:M,/XKM=]86%-IX
M"Y&I^A=LF[6A(2XJI47>BLT\YT5SI6^M$0<"% P(<"O YPI(*ZB=\YO,ZK)F
M5-/)2(HMD':UB68'M3>UVE3#"[N-3UJ:I]SH].2>&0\4N )WE:XD YF=@Y*^
MFZW2"ES,F*8\4Y=FQ?/3#%Q\N1SYVG"MVE^TC-N&@0<8,[:X!@1]!1ABY)!/
MSY?#CW+?5-N5C+N2<1V/'"WY2"#2!2)UH& @D,D'N]QH5%&MLJ_1ZR2*P@3%
M(__500LZ6G"*1ERT1A4>T@*"2>"FA1TM/$4+7+2P1R,IC'#JID4=+3I%"UVT
MJ$?#40+#R$V+.UI\BA:Y:'&?AN,P0&Y:TM&2H[3?&V;ZZTHSZ6(F/28R7F R
M8&C:0=/C4*%I!E:N=]J51=K?58QAB :,1G#?7>#1/.Z94C> YV6EV1+PPKC
ME':V$-C+X2I(89P,Y7#0X= 97C0FB'G&U]0>($X?VD@?_@(Q3F,"!Y+8]QR$
MSS!B44EI]N!D&KCO19AB0O9>M(T3]UK-51"&<9(,Y+MO;>AX;_LEBEVRYSG7
M;WH8D9BDP>>4^PO3!,/X\S;[!V>:_:#X2>6:%\IDLS)">!T;=V1S1C<3+<KZ
MF)L+;0[->K@QWS5,V@7F^4H(O9O8D[/[4IK\!U!+ P04    " "SB7U41;0B
M<.("  !!"   &0   'AL+W=O<FMS:&5E=',O<VAE970W,RYX;6RMEEMOVC 4
MQ[^*%>VAE=8F<>X5(!78M$JK5!5U>S;) ;PF-K--8=]^MA,RF@34A[T07\[Y
M^W>.+X?1GHM7N0%0Z%"53(Z=C5+;.]>5^08J(F_Y%IB>67%1$:6[8NW*K0!2
M6*>J=+'GQ6Y%*',F(SOV)"8COE,E9? DD-Q5%1%_IE#R_=CQG>/ ,UUOE!EP
M)Z,M6<,"U,OV2>B>VZH4M (F*6=(P&KLW/MWL\S86X,?%/;RI(U,)$O.7TWG
MH1@[G@&"$G)E%(C^O,$,RM((:8S?C:;3+FD<3]M']:\V=AW+DDB8\?(G+=1F
M[*0.*F!%=J5ZYOMOT,03&;V<E]+^HGUMF\0.RG=2\:IQU@059?67')H\G#CX
MYQQPXX"[#N$9AZ!Q"&R@-9D-:TX4F8P$WR-AK+6::=C<6&\=#65F%Q=*Z%FJ
M_=3D@>6\ J3( 22Z03->;3D#IB3B*T3KR27HTP+'7FUZ-0=%:"FOM=/+8HZN
M/EV/7*6!C*R;-XM/Z\7QF<5]C!XY4QN)OK "BO<"KHZD#0<?PYGBBXISR&]1
MX']&V,/^ -#LX^[>!9R@S6Y@]8(/9/>"7-C*A58N/".G#ZX^E@Q=,:[TO5O^
MTG<!*?YN9P:WH9:-K:RYUV^3*$F].,,C]^TT.WV[.$RB. M:NW?<4<L=7>1^
MA /-^1!8[1>=+'CC)W&2^5&';, PS+P@2]-AM+A%BR^BO3"JH$ +151WBVK"
MN+\PSB*,XRYAWU#;Q5&$AP&3%C"Y"/AP]@X.T28]"-^+O<CO;G3?+HQPBJ-D
M&#9M8=.+L-]!2E10F>M;3=E.)U:7&T',@SV$.TO[&)F'<7CFO&4M1O8?<Y;U
M#GT0!V&4^9V<]>VR,/ BS^O NB>O<05B;8N41#G?,56_9.UH6P?O[?/?&9_J
M^EB7LW\R=7%])&)-F40EK+2D=YOH%(JZ8-4=Q;?VS5]RI2N(;6YTC0=A#/3\
MBG-U[)@%VG\-D[]02P,$%     @ LXE]5,V6 R/9 @  V0@  !D   !X;"]W
M;W)K<VAE971S+W-H965T-S0N>&ULG99=;]HP%(;_BA7MHI56$CO?%2 56+5>
M5$)EW:[=Y !1DYC9!KI_/]L):1H2-O4&8N>\[WG.P<EA?&3\56P!)'HK\E),
MK*V4NUO;%LD6"BI&; >ENK-FO*!2+?G&%CL.-#6B(K>)XP1V0;/2FH[-WI)/
MQVPO\ZR$)4=B7Q24_YE!SHX3"UNGC:=LLY5ZPYZ.=W0#*Y#/NR57*[MQ2;,"
M2I&Q$G%83ZP[?#O'1F B?F9P%*UKI$MY8>Q5+Q[2B>5H(L@AD=J"JJ\#S"'/
MM9/B^%V;6DU.+6Q?G]SO3?&JF!<J8,[R7UDJMQ,KLE *:[K/Y1,[?H>Z(%_[
M)2P7YA,=J]B 6"C9"\F*6JP(BJRLONE;W8B6  <# E(+2%?@#0C<6N":0BLR
M4]:"2CH=<W9$7$<K-WUA>F/4JIJLU#_C2G)U-U,Z.7TH$U8 DO0-!+I!2\X.
MF?F)U E!6?OFU0(DS7)QK<*>5PMT]>5Z;$N%H(WLI$XWJ]*1@728H$=6RJU
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
MPSV4_O2U7L)R8?[1P=J&H8.2G9"L*&&U@H)0^\2OY3Z< $JG'@A*(/@(1&>
ML 3"MD!4 E%;H%\"_;; H 0&;8%A"0S; J,2&+4%+DK@XB,P.'=PWO'DO+9S
M^-5AVZ"S46)";(8ECL><'1#7]DI/-TR<&EY%%J$ZHU:2J[=$<3*>D3U)@:8"
M?9V!Q"07W] /] 6Y2&28@QB[4LVB;=VD5)Q:Q>",8H@>&9690#<TA;2&7S3S
M?M @X"KW*A^#HX_3H%%Q!DD/A?YW%'B!7[.@ZV9\!5N%>V?Q63.^V-%&_*89
M?\2\<?&W[7WW:O"[]K[7X??M?:_#Y^U]K\,7_W?N#YVW[ET8AE6JA48O_"S5
M>@UB4246&;'HT[Q= D<KG:M(+3A7S[J<FUHUWWX&]#6[C[V>-^I[IS^U2?O3
MO.@"S;I -UV@VR[071?HO@LT[P(M+#1\QX31>Z.'3XQL0+DGET(!?&/J%H$2
MMJ/2!FTU6I5&5Z8B^# ^]2_G?LWX0I52]A+Z)V_K,)6W&T(%RF&MIO)Z0W6[
M<UO;V(YD6W,E/3.IKCC3S%0Y"%P;J/=KQN2QHR>H"LSX+U!+ P04    " "S
MB7U4GA56<?,*   S.0  &0   'AL+W=O<FMS:&5E=',O<VAE970X,"YX;6R]
MFUUOVS@6AO^*$.Q%"S0UOS^*-$"3[LX&F.X6[7;G8K 7BLTD0FTI(\E)!]@?
MOX>R:]KB(>4$[?8BC9U7U$N*.L\YI'3VV+1?NSOG^N+;:EEW;T_N^O[^S6S6
MS>_<JNQ>-_>NAK_<-.VJ[.%C>SOK[EM7+H:#5LL9(T3-5F55GYR?#=]];,_/
MFG6_K&KWL2VZ]6I5MG]>N&7S^/:$GGS_XE-U>]?[+V;G9_?EK?OL^B_W'UOX
M--NULJA6KNZJIBY:=_/VY!U]<VFX/V!0_+MRC]W>[X7ORG73?/4?KA9O3XAW
MY)9NWOLF2OCOP5VZY=*W!#[^V#9ZLCNG/W#_]^^M_VWH/'3FNNS<9;/\K5KT
M=V]/S$FQ<#?E>ME_:A[_[K8=DKZ]>;/LAI_%XU9+3HKYNNN;U?9@<+"JZLW_
MY;?M0.P=P$SB +8]@(T/H(D#^/: 8>1F&V=#M]Z7?7E^UC:/1>O5T)K_91B;
MX6CH357[R_BY;^&O%1S7GW]VMW!1^J*J-U/"#^V+]ZXOJV7W\FS6PRF\<#;?
M-G>Q:8XEFJ.L^-#4_5U7_+5>N,5A S/PMC/(OAN\8-D6W[OYZX+35P4CC'[Y
M_+YX\9>7W<8T8N_R^,;(MK&,1[X;1#XTRR<&\9.[;]J^JF^+J[WA_/U7D!=7
MO5MU_\F<3.Q.)H:3B<3)_K%>7;NV:&ZVIRNOEZ[8.NB*_Q;IP;G8-"R'AOW]
M_7 NSF8/B!>Y\R*S7CZY!U>O'7:NS8%J[UQ*&<4E8;M3;JY8+-1,,4.9PKVI
MG3>5]7;9=+T?I3;M4<7CP;E4G-*11T0HC;1*4]RCWGG468^_M$W7%?=M<U.A
M%TQ'YV4P@IK:L4%$J+0R0DK<H-D9-'F#KG9MN2S*>E&4"X@_5=>WI8^\A?L&
M*.E<A_DVD1UJP#B7=N0;$PHNC#6X;[OS;?.^ 6#%BR6,[LO"PZ+K@(B+JKMO
MNLK?E-W0HVIU7U;M<..\*FJ'7@(;.3SE%*X^5Z.NQ$+*K=5X/R@)\9ED>W)5
MSYN5*V[:9E4 O-LAIJ"#OFWH8!(02JP=.T6$A@LM92(:T#V8T*S9?_9W$)JJ
MP7)R1+=M'(R4@GEMY=@G(B2&69&(#)0%G^R80;UV$*7=UF_1E]_PV;QM;-\'
M5US(Z"Y$A%9P(@E)& Z H3QK^ +N0X@1FVDPZ9?'<U8(;<TX]")"HS1+38-
M*#J!*-=_-SD8GD-*4-5K#\:)*8P0"JZXU'SL/!9:+KC6J:D1B$;S2+N:\EV4
M?=]6U^L->/NFJ)OZU"O;9KGTTJKN7>NZ'N^AC(PKSBR-YGZLTYP0DHCG-%"1
MYK%XU+6)^G@)7S;+:E'V;E'\!C];^.IU\6N_>%U CCK_>M<L%Z[%NQS3DPMA
ME33C/L="HRA<U 1E:< LS7/6=]K#8--EX,"VU]"9B0D9@_44IJ,@>DPR3"DL
M84SPA/O 8)J'\-XE^Z'7)8:O 0C$/8MU7%,J68+1-$":YBG];CYOUCYK;=W<
M50^^4VEJQ'QEF@O+B1[[1914&&Y3P8$%&+,I&$,NV3?MGZ^@-FM;G_/[/&*(
M )O/F'46\U8SKHT8QV-,J!F%6B5A/("9Y<'\L?7SO ??]\MRZ]K]L:[N??*3
M'',6 UAZ_$H^GB.8$O)/8$X")BRPFN59[:=XWZXW53]D=9 MWT)X1:<TBP&L
M(6508WP@.B$(3YH-G&9Y3E_5?5G?5C"1TQDEBZG+!:%*C?,T1"C\1.:)B,("
MH%D>T+\TS>*Q6BY1>S%:*1%,$AJ-(J+D_%!Y:#!0F.4I_*^FAZIC6\INTG?\
M@L>8I%)H*)'8."R@4IBBVJK490]097FHOAL,^FKS"6QA,>X8X]3:V#JF5%I+
MDPC!+)"1Y<FX&>C, ,=8HUH3ILE>M;!UB4FM]/]8PF9 (,LC\-.P(E7\_L'Y
MQ8_<,@H+]&'VYZ_:\, .GF='9JV$(Y4;A'UAY?B60Y56 DT2B. !$3R/B"/6
M2SA2D%&BB.7C&8LK#3$T<:_QP .>Y\'4F@F/8SN<6O@(.S:)*8VF4B82!;ZW
M()CGP#/737@<\2DS@K)HX017:BM$HD+@ 0Y\ @X_;.V$QX X94(9.2Z<$2&#
M B'1DT 1?GPMEX_%/(;#*?.3QHZC'*:D!.[55-G, T7X!$6>D YS! D*ICB-
M)@HB%/ OM3+( SIX'AW/2X8YLE2IC68Z"B&XD*I$<L$#3'@>)L]+AGE<!C'%
MI>:6C)TC2K@SM4S>FX%9/%\Q/249YG$=I*CF/)K1L8X3"3$3-RL"\42>>+DL
M4\0@HU3[TX[<'2$\M!> )_+ .S;'%#'+_#@J(2*O2!6D('6F>^'[T&R@GLA3
M[V*]_'I,^B,"HL3_8]-J;]<J3Y5,^B.0Z*\,@;IM',PPI>" Q]22L BL$'E6
M')'^"*2"@"0<\O5Q(8\IE956IH*7") 0>4A,I3\BCO>6")B!X_B*"#6'\MZD
M+ 8PB(E=K><E/P*I'[B" #M>&\6$ #^B$F6&"&00$]M=/RSU$<C.UOX^P+8G
ML4JS5/4L B5$GA+'YSTBCOT:"DNNHAF-P81 I9_:00Z4D'E*/"7KD4CY0Y6!
M"F@<BA$E4(,QDQI=&;@A\]QX7MXC8S9PHWQ)-':."'T9+5(C'1@B\PQY7MXC
MXRH)$DBM;+0#BBFUHE2JQ"ZH#+"2^7KJ*7F/1-;7@-?C^#<I.[0:0">?O[8F
MD14S*XS1XQ!WA/#0WMX3&S]F94TB&U60IG-!(J_(5I70FNK4)KX,L)-YV'UV
M[4,U=]TQF8\,?)+ZYV<^,D!%3JU=I1^202C!C1%&1K,543++M4FEEC+00D[5
M%).9CT0>;B":Z/W-K:W/6&F5-2RU[J,")]1$-3&1^*@XXL/]#/%G7.]@0L:M
M2E5G*I!!Y<GPS,1'Q1$?XB:+$Q],:+BP-!&T5$"#FEA4^V&)CXHA< KS>=P3
MY)$*0Q(EG0J84%/;+\<F/@K=6^'1<@^F(P;2Y(35@ F5Q\13TAZ%T !N*AWE
M])A0,+]"F[ ;L*'RV'A>[J!B-$C*A!U'#40G?/<2N9K:>P8P#Y!C]N,4LD(F
M)83A<6:&"#DC1*:6TE0@DIJHF#(Y@XJK'0FG%=%R]A'"0WN!8"I/L&-S!H5
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
M&6BA%.705RX47Q=STX(KW97%8Z('91#&0+]?<:[V"W- /7J/_P=02P,$%
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
M _3]%>?J8U ^H#T=F_T/4$L#!!0    ( +.)?53J8NUHP ,  -L0   9
M>&PO=V]R:W-H965T<R]S:&5E=#@U+GAM;,58VV[C-A#]%4(HT%V@C43JOK -
M)';:!FC08(-M'XH^T-;8)E8B79*.L_WZ4I0BR8HL&$4-&X&MR\SAF3G6,2>3
M@Y!?U19 H]<BYVKJ;+7>?7)=M=I"0=6-V $W=]9"%E2;4[EQU4X"S6Q2D;O$
M\R*WH(P[LXF]]B1G$['7.>/P))':%P65W^X@%X>I@YVW"Y_99JO+"^YLLJ,;
M> ;]9?<DS9G;H&2L *Z8X$C">NK<XD]S$I8)-N)W!@?5.49E*4LAOI8G#]G4
M\4I&D,-*EQ#4?+S '/*\1#(\_JY!G6;-,K%[_(;^DRW>%+.D"N8B_X-E>CMU
M$@=EL*;[7'\6AU^@+L@27(E<V7=TJ&,]!ZWV2HNB3C8,"L:K3_I:-Z*3@*,3
M":1.(/V$X$2"7R?XMM"*F2UK036=3:0X(%E&&[3RP/;&9IMJ&"]E?-;2W&4F
M3\_F0FDDUD:1%^![4(CR#&V @Z2Y/::9694I+6G9;P2OY@ND3-R/Z.<SHCXL
M0%.6JX\F_LOS GWX[N/$U89WN;J[JCG>51S)"8Z8H$?!]5:A>YY!=@S@FH*;
MJLE;U7=D%'$!JQODXQ\0\0@>(#0_/]T;H>,W(O@6S_^_1?CS5X.$'C04ZJ\1
M'D'#([ \@A,\NHK>'B]Y7RTY)%Z%&5G,TC5>9CCQ0\\/TXG[TFWJ4&#@!TF:
M-(%'M,.&=CA*^[[8Y>(; %J9/IJF/$*Q!#G6D*A!CJXJ3-SPB"\@3(49=OJ=
MAA'!).SI\CX.>UX2A<D)79*&=3+*^H&KO:1\!>=(DC:@Z54EP5[KG-X%1*E!
MC[J=8-\C44^5H<# C](P'E8%=RP?CQ)_DF(-JOPA-NS7 &<],IBT\.2Z"K6V
MBOU+*.2_;WSH10'Q^PH-! 9)D@8GGAO<^C >-^(%DV:;(Z3ZOM*G+*!MTQEB
MM=:)P^N*U5HMCBXA5O1.@R3$<=SWN*&X*#2O$U*USHS'K7D!9ON\8M1N2L^1
MIG5/G%Q7FM9R<7H):=*!Q\,S?WUI!N)\/XA/^!QI#9J,&_1M(:1F_U32F$8R
MKBG?L&5^WD-$6D,E^*I*D=9[";F 4C5H5X$XB*(H[BDU$)>DN!MW3+LU:C)N
MU+_I+<A&DYNQ5K0>2H+KBM)Z+!G?G_Y'4<)WVV4_-OL$K_\S-!08^CCVHIXL
M;F=,+$!N[/2LS*YYSW4U.S57FPG]ULZEO>MW9G*OYNP6IAK['ZG<,*Y0#FL#
MZ=W$AINL)NGJ1(N='4:70IO1UAYN@68@RP!S?RV$?CLI%VC^GS'[%U!+ P04
M    " "SB7U4X=_QU:0"  "_!P  &0   'AL+W=O<FMS:&5E=',O<VAE970X
M-BYX;6R556UOVC 0_BM6I$J=M)+$X:6M *G03MN'2E71ML]N<@$+Q\YL0\J_
MW]F!C**0LB^)[=SS^)Z[R]VX4GIM5@"6O!="FDFPLK:\#T.3KJ!@IJ=*D/@E
M5[I@%K=Z&9I2 \L\J! AC:)A6# N@^G8G[WHZ5AMK. 27C0QFZ)@>C<#H:I)
M$ >'@U>^7%EW$$[')5O" NS/\D7C+FQ8,EZ -%Q)HB&?! _Q_7SD[+W!+PZ5
M.5H3I^1-J;7;_,@F0>0< @&I=0P,7UN8@Q"."-WXL^<,FBL=\'A]8/_FM:.6
M-V9@KL1OGMG5)+@-2 8YVPC[JJKOL-<S<'RI$L8_257;CM XW1BKBCT8/2BX
MK-_L?1^'(P#MGP'0/8"> N@90+(')%YH[9F7]<@LFXZUJHAVULCF%CXV'HUJ
MN'197%B-7SGB['1A5;J^<8'(2*H*+ [#?'QOR((O)<]YRJ0EE0\'VK M:,PN
M80;S7CI+0ZX?P3(NS)=Q:-$E1QRF^^MG]?7TS/4Q)<]*VI4A3S*#["-!B%H:
M0?0@:$8[&1\A[9$D_DIH1.,6A^:7PZ,.=Y(FOHGG2_XSOAW4_8:Z[ZG[9ZA?
MN5F37 ,0+BUH,)9H9J$M"=U$48]&5VVA^@P6CZXZ= P:'8-.GJ?W$O]IC(_R
M]40$SX%<[X#I]HKJ9HN)0Q)*BKJNL,(RMC-M\BXBBFLB,FRA^2!WV,@=7B9W
MJP26@N!VUZ:RFR2)>W>T-6?=N$'<B^^ZDC9J5(PN4Y'Q+<] 9F3'061M2KJ)
M:._VM(IJ(9_!^J?Z:QWA42\L0"_]B##X[VVDK;M(<]I,H0???$_.9SB=ZF'R
MCZ8>;<],+SGV/0$Y4D:]$1:2KL=%O;&J]!WW35GLWWZYP@D+VAG@]UPI>]BX
M"YJ9/?T+4$L#!!0    ( +.)?52J?MS54P,  #T+   9    >&PO=V]R:W-H
M965T<R]S:&5E=#@W+GAM;*V6ZVO;,!# _Y7#[,,&2_S*LR2!M-VCT+'0LI4Q
M]D&Q+[&H;7F2DC2P/WZ2[#@>L5.7[HNMU]W][G22;K)C_%%$B!*>DC@54RN2
M,KNP;1%$F!#191FF:F;%>$*DZO*U+3*.)#1"26Q[CC.P$T)3:S8Q8PL^F["-
MC&F*"PYBDR2$[R\Q9KNIY5J'@3NZCJ0>L&>3C*SQ'N6W;,%5SRZUA#3!5%"6
M L?5U)J[%Y=N3PN8%=\I[D2E#=J5)6./NG,33BU'$V&,@=0JB/IM\0KC6&M2
M'+\+I59I4PM6VP?M'XWSRIDE$7C%X@<:RFAJC2P(<44VL;QCN\]8.-37^@(6
M"_.%7;'6L2#8",F20E@1)#3-_^2I"$1%P&\2\ H!SW#GA@SE-9%D-N%L!URO
M5MITP[AJI!4<3?6NW$NN9JF2D[-[R8+'CO8KA( E:K,%,>'J@)D"EAVC1^4>
MWEZC)#06[R:V5/:U%CLH;%WFMKP&6ZX'7U@J(P$?TA##?Q78"KRD]P[TE]Y9
MC=<8=,%WWX/G>.X;L$%$A*/(OV?T^V5T?*/?;XJ.5E1$YZH:G3GG)%VC2D\)
MRSU4URW(W@S/=X2'\/-6J80;B8GX=0:H5P+U#%"O >CK1@I)TI"F:R 29(2P
MQ#5-4SW 5I AIRR$SE>S:P+^0%TL\M#FEOK&DCZ\VYGK.+XSL;<U@/T2L'\6
M\).*BU11Z$ ;A/XI@N?X7CW"H$08G$7X\(0\H*(UQ. $HN.YSJ >8EA"#,]"
MJ"MCA51%PL:GC/+6,,-3F'%OT  S*F%&+\T:S'LO3)E13<KTQ@TI,R[IQFWI
M.@_F%E71FF^1JU<!#IL)"TX#/)OSE?@>KX(Z+W*<X3]9UQV/ZKUPG>--ZK1)
M_6=]> ZO,#.J\(V[OM^ 5[GHW7;'XO6 [@G@J.LV\'E'/N]E)^;UG%Y-('N]
M!M#CF^#Z_SM?3T];ZV0M8-IFZ_$A<5N_)*=>W*$NZ#3RE7JPN7K\-R2&6[I"
M>/L#"6]X_<];]&"O1<&')*\"W!&$9%_[3MN5BB9!OC9UFU 5RB:5>7%3CI:U
MX3ROB([+\\+R"^'JLA 0XTJ).MVANKYX7JOE'<DR4Q\MF535EFE&JKY%KA>H
M^15C\M#1!LJ*>?874$L#!!0    ( +.)?52) <O%$00  -86   9    >&PO
M=V]R:W-H965T<R]S:&5E=#@X+GAM;-58VV[;.!#]%4+8AQ9(+9&^R8%MP''2
MW0 -UFC0]J'8!UH:VT(DT4O2=@+LQR])*:)\XZ9[@_QBB:.9T5R.YT SW#'^
M)%8 $CUG:2Y&WDK*];7OBV@%&14MMH9</5DPGE&ICGSIBS4'&ANC+/5)$/3\
MC":Y-QX:V8R/AVPCTR2'&4=BDV64O]Q RG8C#WNO@L_)<B6UP!\/UW0)CR"_
MK&=<G?S*2YQDD(N$Y8C#8N1-\/64A-K :'Q-8"=J]TBG,F?L21_NXY$7Z(@@
MA4AJ%U1=MC"%--6>5!R_ETZ]ZIW:L'[_ZOVC25XE,Z<"IBS]EL1R-?)"#\6P
MH)M4?F:[7Z!,J*O]12P5YA?M2MW 0]%&2):5QBJ"+,F+*WTN"U$SP+TS!J0T
M((<&G3,&[=*@;1(M(C-IW5))QT/.=HAK;>5-WYC:&&N539+K-CY*KIXFRDZ.
M'R6+GC[H0L0H8IE"AZ"FOA_0-U,"):=;X*JE:$$3CK8TW0!B"\366D\@*I%<
M 8JI-.(EI[E$-(^--,DE3U3/HV,[> 8>)?J][VY!TB05[]5+OSS>HG<_O1_Z
M4B6G0_2C,I&;(A%R)A%,T /+Y4J@NSR&>-^!KZI2E8:\EN:&.#W>0M1";7R%
M2$#PB8"F;S</'.&TJTZUC;_VN4ZM*(>R4]-ZIR9<E7P)ZK\ET?P%U?5F],6(
M)SO*8_3]DW*)[B5DXC='0)TJH(X)J/-?!72%?BVP<(7N2C (A1@T YXP]?2^
M L]7#9Y3F"@B[)D(]<3:COMAOS?TM_4^'2NUPP&NE/:2[U;)=YW)FP&('BA_
M4J-VQI,(T/<'R.; 7:7M5=Y[S>AUOPJH_[_U^F<](?8:74V:23EIC JZU2/E
MHQXZ9_M?1-VOM[;5QP?]/U8BK?[I]H=5/<*_VW[T![K+UBE[ 87FFG"F^ DX
M5UD*/7/? I=!%<V@&7#!@:65X"(!4X8=NA%S0NLL9'"-:K&S)A/YPP,#$^N<
M- 0#EK!P^S(QT#[1W7!PB(%36IWN&1!8TL1NUCP' C4A'FA.RZH<3Q!71RQI
MX6Y#0&*9#O<N$R1%V-U:^X-#A+A4]LMA>1:[B=8!CY.LHDJ6J6*]F5*P93@<
M-@0KEN;PX#*Q,GC30#FE=6Z@$,NTQ,VTDSG;P@\3"[&L17 S<$ LUQ%RD3@H
MPW;-#*?*?CDLSQ(WSSH0\ ]8A5A*(YV&(,02'7%_GC46(=V_1HA+9;\<EF2)
MFV3="/FW/E>(93G2;PAB+-T1]Q==8Q$3'FTOCA#C4BG*X=<VA!GPI5F<"A2Q
M32Z+C5@EK9:S$[.2/)#?X.MIL6*U;HJ-KT+7,LD%2F&A7 :MOD(P+Y:HQ4&R
MM=E#SIF4+#.W*Z Q<*V@GB\8DZ\'_8)JE3W^$U!+ P04    " "SB7U4;Z9+
M#80'  "#)   &0   'AL+W=O<FMS:&5E=',O<VAE970X.2YX;6S-6EMOVS84
M_BN$L8<-2&/Q8DLND@"Y=%N M3.:71Z&/3 28Q/5Q2.II!GVXT=2LFA;%&VX
MW> ^-+;$<W2NW\=#Z^*E$I_DDC$%/A=Y*2]'2Z56;\=CF2Y90>5YM6*EOO-4
MB8(J_54LQG(E&,VL4)&/411-QP7EY>CJPEZ;BZN+JE8Y+]E< %D7!16O-RRO
M7BY'<+2^\)$OELI<&%]=K.B"/3#UZVHN]+=QIR7C!2LEKTH@V-/EZ!J^O2,S
M(V!7_,;9B]SX#(PKCU7UR7RYSRY'D;&(Y2Q51@75?Y[9+<MSHTG;\5>K=-0]
MTPAN?EYK_]XZKYUYI)+=5OGO/%/+RU$R AE[HG6N/E8O/[+6H8G1EU:YM/^#
MEW9M- )I+555M,+:@H*7S5_ZN0W$A@":# B@5@#M"$ R((!; ;PK@ <$2"M
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
M#A:B'K5I?X/I=>/V'FAC<9FR%4LG=5?/IU4SL T;M7[ 81^YJ1X_@ODXS(\
MAL7!%& ^S@N+\S_-9X#.QV&8MH$7&: ^ ]3'>?F02?7!XOA]$OOX9YHD413'
MV(I.)EX%$VS=XAB^?C9,&WA@<2#2GZTUGFV\0@[7 9;30Q6"S12O1&RF^%H#
MXE\W\$@2?[:Q.."!90&K'8COCP,UY?>)(L@JI@W;P3B2)!@"M>BOT3A&5B>&
MCS\_V"Z)HB3Q(X#Y%401AL!NQ!%, 6C D"BJSL&]\RALSJEP\_O7^#=02P,$
M%     @ LXE]5)>*NQS     $P(   L   !?<F5L<R\N<F5L<YV2N6[#, Q
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
M>B<!O1/U3@)Z)^J=!/1.U#L)Z)VH=Q+0.U'O)*!WFAP6%- [4>\DH'>BWDE
M[TR]LX#>F7IG ;TS]<X">F?JG07TSM0["^B=J7<6T#M3[RR@=Z;>64#O/#GL
M+:!WIMY90.]"O8N WH5Z%P&]"_4N GH7ZET$]"[4NPCH7:AW$="[4._RG7H/
MX^>A#K>>KS6?_YU4CY?OUMOCK\NOBY-W_(IS>U\Q//T%4$L#!!0    ( +.)
M?51&_2!Z3 (  )XV   3    6T-O;G1E;G1?5'EP97-=+GAM;,W;36[;,!"&
MX:L8V@:6(I*BJ"+.INVVS:(74"4Z%JP_D$SJW+ZTG 1HD1H-7*#OQH)-<KX1
M!WAVOOGV-%N_.@S]Z#?)+H3Y0Y;Y9F>'VJ?3;,>XLIW<4(?XU=UG<]WLZWN;
MB>MKG373&.P8UN%8([F]^62W]4,?5I\/\6??3>,F<;;WR>KC:>,Q:Y/4\]QW
M31WB>O8XMK^EK)\3TGARV>-WW>ROXH8D>S/AN/+G@.=S7Q^M<UUK5W>U"U_J
M(>[*#GWFPU-O?7J^Q!L]3MMMU]AV:AZ&>"3UL[-UZW?6AJ%/3T6OSB>'>,/V
M])E?G+^4.1<8=]ZY:?9Q8LZ^/^YE),?3ZSD6LBYTYU_Q-3&6OOC]['':K6W_
M,CM>[X_)[9=Y^&QY7'['O\[XM?X[^Q"0/B2D#P7IHX#TH2%]E) ^#*2/"M)'
M?DUIA")J3B$UIYB:4U#-*:KF%%9SBJLY!=:<(JN@R"HHL@J*K((BJZ#(*BBR
M"HJL@B*KH,@J*+)*BJR2(JNDR"HILDJ*K)(BJZ3(*BFR2HJLDB*KHLBJ*+(J
MBJR*(JNBR*HHLBJ*K(HBJZ+(JBBR%A19"XJL!476@B)K09&UH,A:4&0M*+(6
M%%D+BJR:(JNFR*HILFJ*K)HBJZ;(JBFR:HJLFB*KILA:4F0M*;*6%%E+BJPE
M1=:2(FM)D;6DR%I29"TILAJ*K(8BJZ'(:BBR&HJLAB*KH<AJ*+(:BJR&(FM%
MD;6BR%I19*THLE8462N*K-7_E/7[-.W_<?SR3(>Z&U_RL^5O:;<_ 5!+ 0(4
M Q0    ( +.)?50'04UB@0   +$    0              "  0    !D;V-0
M<F]P<R]A<' N>&UL4$L! A0#%     @ LXE]5$[.:$GM    *P(  !$
M         ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ LXE]
M5)E<G",0!@  G"<  !,              ( !RP$  'AL+W1H96UE+W1H96UE
M,2YX;6Q02P$"% ,4    " "SB7U4LO"#64@&  !,&P  &
M@($,"   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ LXE]
M5&3HW*S3"   >"8  !@              ("!B@X  'AL+W=O<FMS:&5E=',O
M<VAE970R+GAM;%!+ 0(4 Q0    ( +.)?51'XT]]$0,  ,L+   8
M      " @9,7  !X;"]W;W)K<VAE971S+W-H965T,RYX;6Q02P$"% ,4
M" "SB7U4$@^"Q>0&  #8&P  &               @(':&@  >&PO=V]R:W-H
M965T<R]S:&5E=#0N>&UL4$L! A0#%     @ LXE]5"97_:Q\ @  '@8  !@
M             ("!]"$  'AL+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4
M Q0    ( +.)?52WTBHM&P<  ,@C   8              " @:8D  !X;"]W
M;W)K<VAE971S+W-H965T-BYX;6Q02P$"% ,4    " "SB7U43#(3EO )  ##
M*0  &               @('W*P  >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL
M4$L! A0#%     @ LXE]5'#.*.J( P  _P<  !@              ("!'38
M 'AL+W=O<FMS:&5E=',O<VAE970X+GAM;%!+ 0(4 Q0    ( +.)?52;$"F@
M0Q4  )M$   8              " @=LY  !X;"]W;W)K<VAE971S+W-H965T
M.2YX;6Q02P$"% ,4    " "SB7U4%I3_K98#  !O"0  &0
M@(%43P  >&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( +.)
M?513<N^\, ,  *\(   9              " @2%3  !X;"]W;W)K<VAE971S
M+W-H965T,3$N>&UL4$L! A0#%     @ LXE]5!=.S-AT @  XP4  !D
M         ("!B%8  'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4
M    " "SB7U4G#Q@* D#  !9"   &0              @($S60  >&PO=V]R
M:W-H965T<R]S:&5E=#$S+GAM;%!+ 0(4 Q0    ( +.)?51-#BB\^ ,  . )
M   9              " @7-<  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL
M4$L! A0#%     @ LXE]5/^RK$E"&   WD8  !D              ("!HF
M 'AL+W=O<FMS:&5E=',O<VAE970Q-2YX;6Q02P$"% ,4    " "SB7U46LMS
M==<#   U"@  &0              @($;>0  >&PO=V]R:W-H965T<R]S:&5E
M=#$V+GAM;%!+ 0(4 Q0    ( +.)?5195PUE40@  "\9   9
M  " @2E]  !X;"]W;W)K<VAE971S+W-H965T,3<N>&UL4$L! A0#%     @
MLXE]5-G4[\N<!@  VQ,  !D              ("!L84  'AL+W=O<FMS:&5E
M=',O<VAE970Q."YX;6Q02P$"% ,4    " "SB7U4R07+W4D$   /#   &0
M            @(&$C   >&PO=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4
M Q0    ( +.)?517[)^6;@(   8&   9              " @021  !X;"]W
M;W)K<VAE971S+W-H965T,C N>&UL4$L! A0#%     @ LXE]5,;R1QKB"P
M8RD  !D              ("!J9,  'AL+W=O<FMS:&5E=',O<VAE970R,2YX
M;6Q02P$"% ,4    " "SB7U4Q-UKW;@#   +"@  &0              @('"
MGP  >&PO=V]R:W-H965T<R]S:&5E=#(R+GAM;%!+ 0(4 Q0    ( +.)?521
MBB@ES0L  "(G   9              " @;&C  !X;"]W;W)K<VAE971S+W-H
M965T,C,N>&UL4$L! A0#%     @ LXE]5$>C$7HZ P  M@<  !D
M     ("!M:\  'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q02P$"% ,4
M" "SB7U4]M%WNX@'  #]%0  &0              @($FLP  >&PO=V]R:W-H
M965T<R]S:&5E=#(U+GAM;%!+ 0(4 Q0    ( +.)?51G 9_OG P  *DC   9
M              " @>6Z  !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L!
M A0#%     @ LXE]5'03'H7  P  ^@@  !D              ("!N,<  'AL
M+W=O<FMS:&5E=',O<VAE970R-RYX;6Q02P$"% ,4    " "SB7U4KG3VA2$#
M  #G!P  &0              @(&ORP  >&PO=V]R:W-H965T<R]S:&5E=#(X
M+GAM;%!+ 0(4 Q0    ( +.)?50J284 I ,  $@(   9              "
M@0?/  !X;"]W;W)K<VAE971S+W-H965T,CDN>&UL4$L! A0#%     @ LXE]
M5.DK4FB( @  T04  !D              ("!XM(  'AL+W=O<FMS:&5E=',O
M<VAE970S,"YX;6Q02P$"% ,4    " "SB7U4:S-*CSP6  #!3   &0
M        @(&AU0  >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0
M   ( +.)?51DU=EL5@,  /,'   9              " @13L  !X;"]W;W)K
M<VAE971S+W-H965T,S(N>&UL4$L! A0#%     @ LXE]5-9%=BOH @  <0<
M !D              ("!H>\  'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q0
M2P$"% ,4    " "SB7U4>" 04"8#  #^"   &0              @(' \@
M>&PO=V]R:W-H965T<R]S:&5E=#,T+GAM;%!+ 0(4 Q0    ( +.)?51!P=%J
M@@(  .,%   9              " @1WV  !X;"]W;W)K<VAE971S+W-H965T
M,S4N>&UL4$L! A0#%     @ LXE]5(=U;P() P  2 @  !D
M ("!UO@  'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6Q02P$"% ,4    " "S
MB7U4GM45O2T#  #?!P  &0              @($6_   >&PO=V]R:W-H965T
M<R]S:&5E=#,W+GAM;%!+ 0(4 Q0    ( +.)?53VI:-I< ,    )   9
M          " @7K_  !X;"]W;W)K<VAE971S+W-H965T,S@N>&UL4$L! A0#
M%     @ LXE]5&TA-;9M P  7@D  !D              ("!(0,! 'AL+W=O
M<FMS:&5E=',O<VAE970S.2YX;6Q02P$"% ,4    " "SB7U4  =JU) %  ">
M$@  &0              @('%!@$ >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM
M;%!+ 0(4 Q0    ( +.)?51QWPKU:P8  .44   9              " @8P,
M 0!X;"]W;W)K<VAE971S+W-H965T-#$N>&UL4$L! A0#%     @ LXE]5 >K
M30.F P  OPD  !D              ("!+A,! 'AL+W=O<FMS:&5E=',O<VAE
M970T,BYX;6Q02P$"% ,4    " "SB7U4+8^=HR "  !8!0  &0
M    @($+%P$ >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;%!+ 0(4 Q0    (
M +.)?52?W4B)O D  '(D   9              " @6(9 0!X;"]W;W)K<VAE
M971S+W-H965T-#0N>&UL4$L! A0#%     @ LXE]5"?9%@#" P  W D  !D
M             ("!52,! 'AL+W=O<FMS:&5E=',O<VAE970T-2YX;6Q02P$"
M% ,4    " "SB7U4%:]7?N$$  "R#P  &0              @(%.)P$ >&PO
M=V]R:W-H965T<R]S:&5E=#0V+GAM;%!+ 0(4 Q0    ( +.)?51DJ'TGZ@(
M  @*   9              " @68L 0!X;"]W;W)K<VAE971S+W-H965T-#<N
M>&UL4$L! A0#%     @ LXE]5,0X\VHK P  OP<  !D              ("!
MAR\! 'AL+W=O<FMS:&5E=',O<VAE970T."YX;6Q02P$"% ,4    " "SB7U4
ML 9"C=$"  #\!P  &0              @('I,@$ >&PO=V]R:W-H965T<R]S
M:&5E=#0Y+GAM;%!+ 0(4 Q0    ( +.)?51=J?]3SP(  *((   9
M      " @?$U 0!X;"]W;W)K<VAE971S+W-H965T-3 N>&UL4$L! A0#%
M  @ LXE]5)OT]9D)!   P@\  !D              ("!]S@! 'AL+W=O<FMS
M:&5E=',O<VAE970U,2YX;6Q02P$"% ,4    " "SB7U4U,- 0!\&  #>'@
M&0              @($W/0$ >&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;%!+
M 0(4 Q0    ( +.)?53)>4.T[P,  *(*   9              " @8U# 0!X
M;"]W;W)K<VAE971S+W-H965T-3,N>&UL4$L! A0#%     @ LXE]5.TZU;""
M P  _A$  !D              ("!LT<! 'AL+W=O<FMS:&5E=',O<VAE970U
M-"YX;6Q02P$"% ,4    " "SB7U4 [7C?RH'  "''P  &0
M@(%L2P$ >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;%!+ 0(4 Q0    ( +.)
M?51[ZOWT<@,  '$-   9              " @<U2 0!X;"]W;W)K<VAE971S
M+W-H965T-38N>&UL4$L! A0#%     @ LXE]5!,:VW'# @  80@  !D
M         ("!=E8! 'AL+W=O<FMS:&5E=',O<VAE970U-RYX;6Q02P$"% ,4
M    " "SB7U4 *W3W[D"  #P!P  &0              @(%P60$ >&PO=V]R
M:W-H965T<R]S:&5E=#4X+GAM;%!+ 0(4 Q0    ( +.)?53O#_*_U0(  *$)
M   9              " @6!< 0!X;"]W;W)K<VAE971S+W-H965T-3DN>&UL
M4$L! A0#%     @ LXE]5-%0$V(2!   _1   !D              ("!;%\!
M 'AL+W=O<FMS:&5E=',O<VAE970V,"YX;6Q02P$"% ,4    " "SB7U4-:_-
M6RD$  #[$@  &0              @(&U8P$ >&PO=V]R:W-H965T<R]S:&5E
M=#8Q+GAM;%!+ 0(4 Q0    ( +.)?52H%VUGD (  (\&   9
M  " @15H 0!X;"]W;W)K<VAE971S+W-H965T-C(N>&UL4$L! A0#%     @
MLXE]5"6P1M(6"   %R8  !D              ("!W&H! 'AL+W=O<FMS:&5E
M=',O<VAE970V,RYX;6Q02P$"% ,4    " "SB7U45P5W(<T#  !<#   &0
M            @($I<P$ >&PO=V]R:W-H965T<R]S:&5E=#8T+GAM;%!+ 0(4
M Q0    ( +.)?50APSXTV (  /4'   9              " @2UW 0!X;"]W
M;W)K<VAE971S+W-H965T-C4N>&UL4$L! A0#%     @ LXE]5"(G#S"5 P
M8A   !D              ("!/'H! 'AL+W=O<FMS:&5E=',O<VAE970V-BYX
M;6Q02P$"% ,4    " "SB7U4A[Q,BE,"  !_!@  &0              @($(
M?@$ >&PO=V]R:W-H965T<R]S:&5E=#8W+GAM;%!+ 0(4 Q0    ( +.)?50J
MC!J#^P,  $L2   9              " @9*  0!X;"]W;W)K<VAE971S+W-H
M965T-C@N>&UL4$L! A0#%     @ LXE]5,,@K.XH!   M1   !D
M     ("!Q(0! 'AL+W=O<FMS:&5E=',O<VAE970V.2YX;6Q02P$"% ,4
M" "SB7U4KG8K<)$"  #Q!@  &0              @($CB0$ >&PO=V]R:W-H
M965T<R]S:&5E=#<P+GAM;%!+ 0(4 Q0    ( +.)?518:++W9 (  .L%   9
M              " @>N+ 0!X;"]W;W)K<VAE971S+W-H965T-S$N>&UL4$L!
M A0#%     @ LXE]5$O"U>/; @  -0D  !D              ("!AHX! 'AL
M+W=O<FMS:&5E=',O<VAE970W,BYX;6Q02P$"% ,4    " "SB7U41;0B<.("
M  !!"   &0              @(&8D0$ >&PO=V]R:W-H965T<R]S:&5E=#<S
M+GAM;%!+ 0(4 Q0    ( +.)?53-E@,CV0(  -D(   9              "
M@;&4 0!X;"]W;W)K<VAE971S+W-H965T-S0N>&UL4$L! A0#%     @ LXE]
M5#C#W 1- P  V@H  !D              ("!P9<! 'AL+W=O<FMS:&5E=',O
M<VAE970W-2YX;6Q02P$"% ,4    " "SB7U4>>VW+QT$  !Z#@  &0
M        @(%%FP$ >&PO=V]R:W-H965T<R]S:&5E=#<V+GAM;%!+ 0(4 Q0
M   ( +.)?5130XX$2P(  +$%   9              " @9F? 0!X;"]W;W)K
M<VAE971S+W-H965T-S<N>&UL4$L! A0#%     @ LXE]5)3=B]7Z P  XPP
M !D              ("!&Z(! 'AL+W=O<FMS:&5E=',O<VAE970W."YX;6Q0
M2P$"% ,4    " "SB7U4&!@P-:D"  !L"@  &0              @(%,I@$
M>&PO=V]R:W-H965T<R]S:&5E=#<Y+GAM;%!+ 0(4 Q0    ( +.)?52>%59Q
M\PH  #,Y   9              " @2RI 0!X;"]W;W)K<VAE971S+W-H965T
M.# N>&UL4$L! A0#%     @ LXE]5/@:^ION P  A@\  !D
M ("!5K0! 'AL+W=O<FMS:&5E=',O<VAE970X,2YX;6Q02P$"% ,4    " "S
MB7U4'1D>H\\"   Q"0  &0              @(%[N $ >&PO=V]R:W-H965T
M<R]S:&5E=#@R+GAM;%!+ 0(4 Q0    ( +.)?51FY$T6]@(  !(*   9
M          " @8&[ 0!X;"]W;W)K<VAE971S+W-H965T.#,N>&UL4$L! A0#
M%     @ LXE]5&W9)<X+!   *1,  !D              ("!KKX! 'AL+W=O
M<FMS:&5E=',O<VAE970X-"YX;6Q02P$"% ,4    " "SB7U4ZF+M:, #  #;
M$   &0              @('PP@$ >&PO=V]R:W-H965T<R]S:&5E=#@U+GAM
M;%!+ 0(4 Q0    ( +.)?53AW_'5I (  +\'   9              " @>?&
M 0!X;"]W;W)K<VAE971S+W-H965T.#8N>&UL4$L! A0#%     @ LXE]5*I^
MW-53 P  /0L  !D              ("!PLD! 'AL+W=O<FMS:&5E=',O<VAE
M970X-RYX;6Q02P$"% ,4    " "SB7U4B0'+Q1$$  #6%@  &0
M    @(%,S0$ >&PO=V]R:W-H965T<R]S:&5E=#@X+GAM;%!+ 0(4 Q0    (
M +.)?51OIDL-A <  (,D   9              " @931 0!X;"]W;W)K<VAE
M971S+W-H965T.#DN>&UL4$L! A0#%     @ LXE]5$#%8,9Y P  Y T  !D
M             ("!3]D! 'AL+W=O<FMS:&5E=',O<VAE970Y,"YX;6Q02P$"
M% ,4    " "SB7U4-KZLA<("  !'"0  &0              @('_W $ >&PO
M=V]R:W-H965T<R]S:&5E=#DQ+GAM;%!+ 0(4 Q0    ( +.)?51&:\P270(
M (4%   9              " @?C? 0!X;"]W;W)K<VAE971S+W-H965T.3(N
M>&UL4$L! A0#%     @ LXE]5,O<M>*; @  B 8  !D              ("!
MC.(! 'AL+W=O<FMS:&5E=',O<VAE970Y,RYX;6Q02P$"% ,4    " "SB7U4
M:?I*J4H#  "X"0  &0              @(%>Y0$ >&PO=V]R:W-H965T<R]S
M:&5E=#DT+GAM;%!+ 0(4 Q0    ( +.)?52%7B7?QP(  ,0'   9
M      " @=_H 0!X;"]W;W)K<VAE971S+W-H965T.34N>&UL4$L! A0#%
M  @ LXE]5/V.Y8YO P  H@D  !D              ("!W>L! 'AL+W=O<FMS
M:&5E=',O<VAE970Y-BYX;6Q02P$"% ,4    " "SB7U40'BJ#BP#   ,$P
M#0              @ &#[P$ >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    ( +.)
M?527BKL<P    !,"   +              "  =KR 0!?<F5L<R\N<F5L<U!+
M 0(4 Q0    ( +.)?53W#>L?_P8  ,T^   /              "  </S 0!X
M;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " "SB7U4%#8 '+X"  !W.   &@
M            @ 'O^@$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"
M% ,4    " "SB7U41OT@>DP"  ">-@  $P              @ 'E_0$ 6T-O
F;G1E;G1?5'EP97-=+GAM;%!+!08     : !H (\<  !B  (    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>115
<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>116
<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>117
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>289</ContextCount>
  <ElementCount>448</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>107</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>10</UnitCount>
  <MyReports>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00090 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00100 - Statement - CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedBalanceSheets</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF INCOME</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows</Role>
      <ShortName>CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>10101 - Disclosure - Principal activity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosurePrincipalActivity</Role>
      <ShortName>Principal activity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>10201 - Disclosure - Accounting policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPolicies</Role>
      <ShortName>Accounting policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>10301 - Disclosure - Cash and cash equivalents</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCashAndCashEquivalents</Role>
      <ShortName>Cash and cash equivalents</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>10401 - Disclosure - Accounts receivable, net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountsReceivableNet</Role>
      <ShortName>Accounts receivable, net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>10501 - Disclosure - Inventory</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureInventory</Role>
      <ShortName>Inventory</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>10601 - Disclosure - Contracts in progress</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureContractsInProgress</Role>
      <ShortName>Contracts in progress</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>10701 - Disclosure - Property, plant and equipment and construction in progress</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress</Role>
      <ShortName>Property, plant and equipment and construction in progress</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>10801 - Disclosure - Discontinued operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDiscontinuedOperations</Role>
      <ShortName>Discontinued operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>10901 - Disclosure - Intangible assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIntangibleAssets</Role>
      <ShortName>Intangible assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>11001 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>11101 - Disclosure - Income taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxes</Role>
      <ShortName>Income taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>11201 - Disclosure - Earnings per share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureEarningsPerShare</Role>
      <ShortName>Earnings per share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>11301 - Disclosure - Dividends</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDividends</Role>
      <ShortName>Dividends</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>11401 - Disclosure - Segment information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformation</Role>
      <ShortName>Segment information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>11501 - Disclosure - Cost of revenues and general and administrative expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses</Role>
      <ShortName>Cost of revenues and general and administrative expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>11601 - Disclosure - Stock-based compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensation</Role>
      <ShortName>Stock-based compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>11701 - Disclosure - Retirement benefits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureRetirementBenefits</Role>
      <ShortName>Retirement benefits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>11801 - Disclosure - Financial instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureFinancialInstruments</Role>
      <ShortName>Financial instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>11901 - Disclosure - Commitments and contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>12001 - Disclosure - Related party transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureRelatedPartyTransactions</Role>
      <ShortName>Related party transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>12101 - Disclosure - Supplemental disclosure of cash flow information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation</Role>
      <ShortName>Supplemental disclosure of cash flow information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>12201 - Disclosure - Impact of recent accounting standards</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards</Role>
      <ShortName>Impact of recent accounting standards</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>12301 - Disclosure - Subsequent events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSubsequentEvents</Role>
      <ShortName>Subsequent events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>20202 - Disclosure - Accounting policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies</Role>
      <ShortName>Accounting policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureAccountingPolicies</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>30203 - Disclosure - Accounting policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesTables</Role>
      <ShortName>Accounting policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureAccountingPolicies</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>30303 - Disclosure - Cash and cash equivalents (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables</Role>
      <ShortName>Cash and cash equivalents (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureCashAndCashEquivalents</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>30403 - Disclosure - Accounts receivable, net (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountsReceivableNetTables</Role>
      <ShortName>Accounts receivable, net (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureAccountsReceivableNet</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>30503 - Disclosure - Inventory (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureInventoryTables</Role>
      <ShortName>Inventory (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureInventory</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>30603 - Disclosure - Contracts in progress (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureContractsInProgressTables</Role>
      <ShortName>Contracts in progress (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureContractsInProgress</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>30703 - Disclosure - Property, plant and equipment and construction in progress (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables</Role>
      <ShortName>Property, plant and equipment and construction in progress (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>30803 - Disclosure - Discontinued operations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables</Role>
      <ShortName>Discontinued operations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureDiscontinuedOperations</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>30903 - Disclosure - Intangible assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIntangibleAssetsTables</Role>
      <ShortName>Intangible assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureIntangibleAssets</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>31003 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureLeases</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>31103 - Disclosure - Income taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesTables</Role>
      <ShortName>Income taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureIncomeTaxes</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>31203 - Disclosure - Earnings per share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureEarningsPerShareTables</Role>
      <ShortName>Earnings per share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureEarningsPerShare</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>31303 - Disclosure - Dividends (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDividendsTables</Role>
      <ShortName>Dividends (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureDividends</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>31403 - Disclosure - Segment information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformationTables</Role>
      <ShortName>Segment information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureSegmentInformation</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables</Role>
      <ShortName>Cost of revenues and general and administrative expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>31603 - Disclosure - Stock-based compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensationTables</Role>
      <ShortName>Stock-based compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureStockBasedCompensation</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>31803 - Disclosure - Financial instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureFinancialInstrumentsTables</Role>
      <ShortName>Financial instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureFinancialInstruments</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>32103 - Disclosure - Supplemental disclosure of cash flow information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables</Role>
      <ShortName>Supplemental disclosure of cash flow information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>40201 - Disclosure - Accounting policies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesDetails</Role>
      <ShortName>Accounting policies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureAccountingPoliciesTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails</Role>
      <ShortName>Accounting policies - Cash and cash equivalents (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>40203 - Disclosure - Accounting policies - Disaggregated revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails</Role>
      <ShortName>Accounting policies - Disaggregated revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails</Role>
      <ShortName>Accounting policies - Goodwill and intangible assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>40205 - Disclosure - Accounting policies - Investments and Other assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails</Role>
      <ShortName>Accounting policies - Investments and Other assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>40206 - Disclosure - Accounting policies - Property, plant and equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails</Role>
      <ShortName>Accounting policies - Property, plant and equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>40207 - Disclosure - Accounting policies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails</Role>
      <ShortName>Accounting policies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>40301 - Disclosure - Cash and cash equivalents (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails</Role>
      <ShortName>Cash and cash equivalents (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>40401 - Disclosure - Accounts receivable, net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails</Role>
      <ShortName>Accounts receivable, net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureAccountsReceivableNetTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails</Role>
      <ShortName>Accounts receivable, net - Allowance for doubtful accounts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>40501 - Disclosure - Inventory (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureInventoryDetails</Role>
      <ShortName>Inventory (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureInventoryTables</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>40601 - Disclosure - Contracts in progress (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureContractsInProgressDetails</Role>
      <ShortName>Contracts in progress (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureContractsInProgressTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>40701 - Disclosure - Property, plant and equipment and construction in progress (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails</Role>
      <ShortName>Property, plant and equipment and construction in progress (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails</Role>
      <ShortName>Property, plant and equipment and construction in progress - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails</Role>
      <ShortName>Discontinued operations - Mexico project development- Narratives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>40802 - Disclosure - Discontinued operations - Mexico project development (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails</Role>
      <ShortName>Discontinued operations - Mexico project development (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>40803 - Disclosure - Discontinued operations - Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails</Role>
      <ShortName>Discontinued operations - Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails</Role>
      <ShortName>Intangible assets - Costs and accumulated amortization (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails</Role>
      <ShortName>Intangible assets - Amortization of intangible assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>40903 - Disclosure - Intangible assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIntangibleAssetsDetails</Role>
      <ShortName>Intangible assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureIntangibleAssetsTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>41001 - Disclosure - Leases - Lease assets and liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails</Role>
      <ShortName>Leases - Lease assets and liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>41002 - Disclosure - Leases - Components of lease cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails</Role>
      <ShortName>Leases - Components of lease cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>41003 - Disclosure - Leases - Supplemental cash flow information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails</Role>
      <ShortName>Leases - Supplemental cash flow information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>41004 - Disclosure - Leases - Future lease payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails</Role>
      <ShortName>Leases - Future lease payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>41101 - Disclosure - Income taxes - Components of income before income taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails</Role>
      <ShortName>Income taxes - Components of income before income taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>41102 - Disclosure - Income taxes - Provision for income taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails</Role>
      <ShortName>Income taxes - Provision for income taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails</Role>
      <ShortName>Income taxes - Reconciliation of federal tax rate to the effective rate (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails</Role>
      <ShortName>Income taxes - Net long-term deferred tax liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>41105 - Disclosure - Income taxes - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails</Role>
      <ShortName>Income taxes - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>41201 - Disclosure - Earnings per share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureEarningsPerShareDetails</Role>
      <ShortName>Earnings per share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureEarningsPerShareTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>41301 - Disclosure - Dividends (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureDividendsDetails</Role>
      <ShortName>Dividends (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureDividendsTables</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>41401 - Disclosure - Segment information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformationDetails</Role>
      <ShortName>Segment information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureSegmentInformationTables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails</Role>
      <ShortName>Segment information - Revenues earned by major geographic region and major customer (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails</Role>
      <ShortName>Segment information - Property, plant and equipment, net by major geographic region (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>41404 - Disclosure - Segment information - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails</Role>
      <ShortName>Segment information - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails</Role>
      <ShortName>Cost of revenues and general and administrative expenses - Cost of revenues (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails</Role>
      <ShortName>Cost of revenues and general and administrative expenses - General and administrative expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails</Role>
      <ShortName>Stock-based compensation - Significant weighted average assumptions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>86</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>41602 - Disclosure - Stock-based compensation - Stock option activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails</Role>
      <ShortName>Stock-based compensation - Stock option activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>87</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails</Role>
      <ShortName>Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>41604 - Disclosure - Stock-based compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureStockBasedCompensationDetails</Role>
      <ShortName>Stock-based compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureStockBasedCompensationTables</ParentRole>
      <Position>89</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>41701 - Disclosure - Retirement benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureRetirementBenefitsDetails</Role>
      <ShortName>Retirement benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureRetirementBenefits</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>41801 - Disclosure - Financial instruments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails</Role>
      <ShortName>Financial instruments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureFinancialInstrumentsTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>41802 - Disclosure - Financial instruments - Level 3 activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails</Role>
      <ShortName>Financial instruments - Level 3 activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>92</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>41803 - Disclosure - Financial instruments - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails</Role>
      <ShortName>Financial instruments - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>93</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>41901 - Disclosure - Commitments and contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails</Role>
      <ShortName>Commitments and contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureCommitmentsAndContingencies</ParentRole>
      <Position>94</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>42001 - Disclosure - Related party transactions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails</Role>
      <ShortName>Related party transactions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureRelatedPartyTransactions</ParentRole>
      <Position>95</Position>
    </Report>
    <Report instance="cwco-20211231x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>42101 - Disclosure - Supplemental disclosure of cash flow information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails</Role>
      <ShortName>Supplemental disclosure of cash flow information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables</ParentRole>
      <Position>96</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="cwco-20211231x10k.htm">cwco-20211231x10k.htm</File>
    <File>cwco-20211231.xsd</File>
    <File>cwco-20211231_cal.xml</File>
    <File>cwco-20211231_def.xml</File>
    <File>cwco-20211231_lab.xml</File>
    <File>cwco-20211231_pre.xml</File>
    <File>cwco-20211231xex10d10.htm</File>
    <File>cwco-20211231xex21d1.htm</File>
    <File>cwco-20211231xex23d1.htm</File>
    <File>cwco-20211231xex31d1.htm</File>
    <File>cwco-20211231xex31d2.htm</File>
    <File>cwco-20211231xex32d1.htm</File>
    <File>cwco-20211231xex32d2.htm</File>
    <File>cwco-20211231xex4d1.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>cwco-20211231x10k003.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="1039">http://fasb.org/us-gaap/2021-01-31</BaseTaxonomy>
    <BaseTaxonomy items="38">http://xbrl.sec.gov/dei/2021q4</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>120
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "cwco-20211231x10k.htm": {
   "axisCustom": 4,
   "axisStandard": 31,
   "contextCount": 289,
   "dts": {
    "calculationLink": {
     "local": [
      "cwco-20211231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "cwco-20211231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "cwco-20211231x10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cwco-20211231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cwco-20211231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "cwco-20211231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/currency/2021/currency-2021.xsd",
      "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd",
      "https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd"
     ]
    }
   },
   "elementCount": 705,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2021-01-31": 14,
    "http://www.cwco.com/20211231": 7,
    "http://xbrl.sec.gov/dei/2021q4": 6,
    "total": 27
   },
   "keyCustom": 83,
   "keyStandard": 365,
   "memberCustom": 54,
   "memberStandard": 45,
   "nsprefix": "cwco",
   "nsuri": "http://www.cwco.com/20211231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "00090 - Document - Document and Entity Information",
     "role": "http://www.cwco.com/role/DocumentDocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10301 - Disclosure - Cash and cash equivalents",
     "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalents",
     "shortName": "Cash and cash equivalents",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10401 - Disclosure - Accounts receivable, net",
     "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNet",
     "shortName": "Accounts receivable, net",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10501 - Disclosure - Inventory",
     "role": "http://www.cwco.com/role/DisclosureInventory",
     "shortName": "Inventory",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10601 - Disclosure - Contracts in progress",
     "role": "http://www.cwco.com/role/DisclosureContractsInProgress",
     "shortName": "Contracts in progress",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10701 - Disclosure - Property, plant and equipment and construction in progress",
     "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress",
     "shortName": "Property, plant and equipment and construction in progress",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10801 - Disclosure - Discontinued operations",
     "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperations",
     "shortName": "Discontinued operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10901 - Disclosure - Intangible assets",
     "role": "http://www.cwco.com/role/DisclosureIntangibleAssets",
     "shortName": "Intangible assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11001 - Disclosure - Leases",
     "role": "http://www.cwco.com/role/DisclosureLeases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11101 - Disclosure - Income taxes",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxes",
     "shortName": "Income taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11201 - Disclosure - Earnings per share",
     "role": "http://www.cwco.com/role/DisclosureEarningsPerShare",
     "shortName": "Earnings per share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00100 - Statement - CONSOLIDATED BALANCE SHEETS",
     "role": "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
     "shortName": "CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:CertificatesOfDepositAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:DividendsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11301 - Disclosure - Dividends",
     "role": "http://www.cwco.com/role/DisclosureDividends",
     "shortName": "Dividends",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:DividendsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11401 - Disclosure - Segment information",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformation",
     "shortName": "Segment information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11501 - Disclosure - Cost of revenues and general and administrative expenses",
     "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses",
     "shortName": "Cost of revenues and general and administrative expenses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11601 - Disclosure - Stock-based compensation",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensation",
     "shortName": "Stock-based compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11701 - Disclosure - Retirement benefits",
     "role": "http://www.cwco.com/role/DisclosureRetirementBenefits",
     "shortName": "Retirement benefits",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11801 - Disclosure - Financial instruments",
     "role": "http://www.cwco.com/role/DisclosureFinancialInstruments",
     "shortName": "Financial instruments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "11901 - Disclosure - Commitments and contingencies",
     "role": "http://www.cwco.com/role/DisclosureCommitmentsAndContingencies",
     "shortName": "Commitments and contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "12001 - Disclosure - Related party transactions",
     "role": "http://www.cwco.com/role/DisclosureRelatedPartyTransactions",
     "shortName": "Related party transactions",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "12101 - Disclosure - Supplemental disclosure of cash flow information",
     "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation",
     "shortName": "Supplemental disclosure of cash flow information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "12201 - Disclosure - Impact of recent accounting standards",
     "role": "http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards",
     "shortName": "Impact of recent accounting standards",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "role": "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical",
     "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockParOrStatedValuePerShare",
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "12301 - Disclosure - Subsequent events",
     "role": "http://www.cwco.com/role/DisclosureSubsequentEvents",
     "shortName": "Subsequent events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "20202 - Disclosure - Accounting policies (Policies)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies",
     "shortName": "Accounting policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30203 - Disclosure - Accounting policies (Tables)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesTables",
     "shortName": "Accounting policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30303 - Disclosure - Cash and cash equivalents (Tables)",
     "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables",
     "shortName": "Cash and cash equivalents (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30403 - Disclosure - Accounts receivable, net (Tables)",
     "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables",
     "shortName": "Accounts receivable, net (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30503 - Disclosure - Inventory (Tables)",
     "role": "http://www.cwco.com/role/DisclosureInventoryTables",
     "shortName": "Inventory (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30603 - Disclosure - Contracts in progress (Tables)",
     "role": "http://www.cwco.com/role/DisclosureContractsInProgressTables",
     "shortName": "Contracts in progress (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30703 - Disclosure - Property, plant and equipment and construction in progress (Tables)",
     "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables",
     "shortName": "Property, plant and equipment and construction in progress (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30803 - Disclosure - Discontinued operations (Tables)",
     "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables",
     "shortName": "Discontinued operations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "30903 - Disclosure - Intangible assets (Tables)",
     "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsTables",
     "shortName": "Intangible assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00200 - Statement - CONSOLIDATED STATEMENTS OF INCOME",
     "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome",
     "shortName": "CONSOLIDATED STATEMENTS OF INCOME",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:InterestIncomeOther",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31003 - Disclosure - Leases (Tables)",
     "role": "http://www.cwco.com/role/DisclosureLeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31103 - Disclosure - Income taxes (Tables)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesTables",
     "shortName": "Income taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31203 - Disclosure - Earnings per share (Tables)",
     "role": "http://www.cwco.com/role/DisclosureEarningsPerShareTables",
     "shortName": "Earnings per share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "cwco:DividendsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DividendsDeclaredTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31303 - Disclosure - Dividends (Tables)",
     "role": "http://www.cwco.com/role/DisclosureDividendsTables",
     "shortName": "Dividends (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "cwco:DividendsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DividendsDeclaredTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31403 - Disclosure - Segment information (Tables)",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformationTables",
     "shortName": "Segment information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31503 - Disclosure - Cost of revenues and general and administrative expenses (Tables)",
     "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables",
     "shortName": "Cost of revenues and general and administrative expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31603 - Disclosure - Stock-based compensation (Tables)",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationTables",
     "shortName": "Stock-based compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "31803 - Disclosure - Financial instruments (Tables)",
     "role": "http://www.cwco.com/role/DisclosureFinancialInstrumentsTables",
     "shortName": "Financial instruments (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "32103 - Disclosure - Supplemental disclosure of cash flow information (Tables)",
     "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables",
     "shortName": "Supplemental disclosure of cash flow information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40201 - Disclosure - Accounting policies (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails",
     "shortName": "Accounting policies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00205 - Statement - CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)",
     "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical",
     "shortName": "CONSOLIDATED STATEMENTS OF INCOME (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember_qDI9R-s-2k-RbzBeME6xew",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40202 - Disclosure - Accounting policies - Cash and cash equivalents (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
     "shortName": "Accounting policies - Cash and cash equivalents (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:CashUninsuredAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40203 - Disclosure - Accounting policies - Disaggregated revenue (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
     "shortName": "Accounting policies - Disaggregated revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2020_To_12_31_2020_srt_ConsolidatedEntitiesAxis_cwco_ConsolidatedWaterBahamasMember_srt_StatementGeographicalAxis_country_BS_TjELs3qLxkKtQNWWCjLUbA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40204 - Disclosure - Accounting policies - Goodwill and intangible assets (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
     "shortName": "Accounting policies - Goodwill and intangible assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA",
      "decimals": "0",
      "lang": null,
      "name": "cwco:EstimatedFairValueCarryingAmountExceededPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:InvestmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:CriteriaForRecognizingInvestmentAtCost",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40205 - Disclosure - Accounting policies - Investments and Other assets (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails",
     "shortName": "Accounting policies - Investments and Other assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40206 - Disclosure - Accounting policies - Property, plant and equipment (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
     "shortName": "Accounting policies - Property, plant and equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_BuildingMember_DdxS_IFv1k2RtyaRfGS-RA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InterestCostsCapitalized",
       "p",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InterestCostsCapitalized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40207 - Disclosure - Accounting policies - Additional Information (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
     "shortName": "Accounting policies - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InterestCostsCapitalized",
       "p",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InterestCostsCapitalized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40301 - Disclosure - Cash and cash equivalents (Details)",
     "role": "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails",
     "shortName": "Cash and cash equivalents (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock",
       "us-gaap:CashAndCashEquivalentsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:AccountsReceivableTradeCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40401 - Disclosure - Accounts receivable, net (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails",
     "shortName": "Accounts receivable, net (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:AccountsReceivableTradeCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40402 - Disclosure - Accounts receivable, net - Allowance for doubtful accounts (Details)",
     "role": "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails",
     "shortName": "Accounts receivable, net - Allowance for doubtful accounts (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProvisionForDoubtfulAccounts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40501 - Disclosure - Inventory (Details)",
     "role": "http://www.cwco.com/role/DisclosureInventoryDetails",
     "shortName": "Inventory (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryNoncurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity",
     "shortName": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2019_us-gaap_StatementClassOfStockAxis_us-gaap_RedeemablePreferredStockMember_us-gaap_StatementEquityComponentsAxis_us-gaap_PreferredStockMember_F-rVUDiH506yKpEPzEz87w",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40601 - Disclosure - Contracts in progress (Details)",
     "role": "http://www.cwco.com/role/DisclosureContractsInProgressDetails",
     "shortName": "Contracts in progress (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40701 - Disclosure - Property, plant and equipment and construction in progress (Details)",
     "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails",
     "shortName": "Property, plant and equipment and construction in progress (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "cwco:CapitalCommitments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40702 - Disclosure - Property, plant and equipment and construction in progress - Additional Information (Details)",
     "role": "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails",
     "shortName": "Property, plant and equipment and construction in progress - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "cwco:CapitalCommitments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40801 - Disclosure - Discontinued operations - Mexico project development- Narratives (Details)",
     "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
     "shortName": "Discontinued operations - Mexico project development- Narratives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_6_29_2020_To_6_29_2020_jMIlRXzHXEaJiswwH1B-uA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:NumberOfDaysToSubmitListOfNonRecoverableExpenses",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperation",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40802 - Disclosure - Discontinued operations - Mexico project development (Details)",
     "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
     "shortName": "Discontinued operations - Mexico project development (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_CuN2JbVgAk-9atDtwef33Q",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:IncomeLossFromDiscontinuedOperations",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40803 - Disclosure - Discontinued operations - Financial Information (Details)",
     "role": "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
     "shortName": "Discontinued operations - Financial Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cwco_MexicoProjectDevelopmentMember_791LvQz0l0SCqeSgeU0TLw",
      "decimals": "0",
      "lang": null,
      "name": "cwco:IncomeLossFromDiscontinuedOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40901 - Disclosure - Intangible assets - Costs and accumulated amortization (Details)",
     "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
     "shortName": "Intangible assets - Costs and accumulated amortization (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40902 - Disclosure - Intangible assets - Amortization of intangible assets (Details)",
     "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails",
     "shortName": "Intangible assets - Amortization of intangible assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "40903 - Disclosure - Intangible assets (Details)",
     "role": "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
     "shortName": "Intangible assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41001 - Disclosure - Leases - Lease assets and liabilities (Details)",
     "role": "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
     "shortName": "Leases - Lease assets and liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:DisposalGroupIncludingDiscontinuedOperationLeaseCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "role": "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
     "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:NetIncomeLossAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41002 - Disclosure - Leases - Components of lease cost (Details)",
     "role": "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails",
     "shortName": "Leases - Components of lease cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41003 - Disclosure - Leases - Supplemental cash flow information (Details)",
     "role": "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails",
     "shortName": "Leases - Supplemental cash flow information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41004 - Disclosure - Leases - Future lease payments (Details)",
     "role": "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails",
     "shortName": "Leases - Future lease payments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41101 - Disclosure - Income taxes - Components of income before income taxes (Details)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails",
     "shortName": "Income taxes - Components of income before income taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "cwco:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41102 - Disclosure - Income taxes - Provision for income taxes (Details)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails",
     "shortName": "Income taxes - Provision for income taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41103 - Disclosure - Income taxes - Reconciliation of federal tax rate to the effective rate (Details)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails",
     "shortName": "Income taxes - Reconciliation of federal tax rate to the effective rate (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41104 - Disclosure - Income taxes - Net long-term deferred tax liability (Details)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails",
     "shortName": "Income taxes - Net long-term deferred tax liability (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41105 - Disclosure - Income taxes - Additional Information (Details)",
     "role": "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
     "shortName": "Income taxes - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_us-gaap_DisposalGroupClassificationAxis_us-gaap_SegmentDiscontinuedOperationsMember_N0saoNUxL0GXQimWfybLoQ",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperations",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41201 - Disclosure - Earnings per share (Details)",
     "role": "http://www.cwco.com/role/DisclosureEarningsPerShareDetails",
     "shortName": "Earnings per share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DividendsPreferredStock",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DividendsDeclaredTableTextBlock",
       "cwco:DividendsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "cwco:DividendsPerShareDeclared",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41301 - Disclosure - Dividends (Details)",
     "role": "http://www.cwco.com/role/DisclosureDividendsDetails",
     "shortName": "Dividends (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DividendsDeclaredTableTextBlock",
       "cwco:DividendsTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_10_1_2021_To_12_31_2021_9IcKGTsMS0yQ38Uj_2etYw",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "cwco:DividendsPerShareDeclared",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Divide_USD_shares_YsiGtCCMsUuJQ0AD8vHZXA",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10101 - Disclosure - Principal activity",
     "role": "http://www.cwco.com/role/DisclosurePrincipalActivity",
     "shortName": "Principal activity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41401 - Disclosure - Segment information (Details)",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
     "shortName": "Segment information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:NumberOfReportableSegments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_segment_jl384CxW_kmPCzXeu__g1g",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41402 - Disclosure - Segment information - Revenues earned by major geographic region and major customer (Details)",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails",
     "shortName": "Segment information - Revenues earned by major geographic region and major customer (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_srt_StatementGeographicalAxis_country_KY_r_55bqiwcUO3N5_w6UPbXA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentNet",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41403 - Disclosure - Segment information - Property, plant and equipment, net by major geographic region (Details)",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
     "shortName": "Segment information - Property, plant and equipment, net by major geographic region (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_srt_StatementGeographicalAxis_country_KY_F0359zoYFkaYzxPK-dCbIg",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41404 - Disclosure - Segment information - Additional Information (Details)",
     "role": "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
     "shortName": "Segment information - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_cwco_SegmentRetailMember_uKfHofPM70GN7a5g3P6CmA",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41501 - Disclosure - Cost of revenues and general and administrative expenses - Cost of revenues (Details)",
     "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
     "shortName": "Cost of revenues and general and administrative expenses - Cost of revenues (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock",
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_ElectricityMember_dwJApOGydku2pSUkdE4cXA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:GeneralAndAdministrativeExpense",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41502 - Disclosure - Cost of revenues and general and administrative expenses - General and administrative expenses (Details)",
     "role": "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails",
     "shortName": "Cost of revenues and general and administrative expenses - General and administrative expenses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock",
       "cwco:CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_ConcentrationRiskByBenchmarkAxis_cwco_EmployeeCostsMember_FY4RyAHWlEOb5GaOdXXxGA",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:GeneralAndAdministrativeExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41601 - Disclosure - Stock-based compensation - Significant weighted average assumptions (Details)",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails",
     "shortName": "Stock-based compensation - Significant weighted average assumptions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "4",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_pure_5iyz4zJFW0ixovk5w2_RNA",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41602 - Disclosure - Stock-based compensation - Stock option activity (Details)",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails",
     "shortName": "Stock-based compensation - Stock option activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_shares_aypikVJD9UeCfpKkWfRyJQ",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41603 - Disclosure - Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails",
     "shortName": "Stock-based compensation - Weighted average fair value of options at the date of grant and the intrinsic value of options exercised (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41604 - Disclosure - Stock-based compensation (Details)",
     "role": "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
     "shortName": "Stock-based compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2020_To_12_31_2020_z4G_V-aIcUueZn4Eage3nA",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "cwco:ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "10201 - Disclosure - Accounting policies",
     "role": "http://www.cwco.com/role/DisclosureAccountingPolicies",
     "shortName": "Accounting policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PensionExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41701 - Disclosure - Retirement benefits (Details)",
     "role": "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails",
     "shortName": "Retirement benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:PensionExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41801 - Disclosure - Financial instruments (Details)",
     "role": "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails",
     "shortName": "Financial instruments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_Xu56YY7wuUuQ4iEUJyq88Q",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41802 - Disclosure - Financial instruments - Level 3 activity (Details)",
     "role": "http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails",
     "shortName": "Financial instruments - Level 3 activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2020_ysFo9FWkvU-X-ZcnqgeQEg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": null,
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41803 - Disclosure - Financial instruments - Additional Information (Details)",
     "role": "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
     "shortName": "Financial instruments - Additional Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "cwco:EmploymentAgreementBaseAnnualSalaries",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "41901 - Disclosure - Commitments and contingencies (Details)",
     "role": "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails",
     "shortName": "Commitments and contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "cwco:EmploymentAgreementBaseAnnualSalaries",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "As_Of_12_31_2021_LCDPfxxfckKMf9LD5A8Xjg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsPayableRelatedPartiesCurrent",
      "reportCount": 1,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "42001 - Disclosure - Related party transactions (Details)",
     "role": "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails",
     "shortName": "Related party transactions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:RelatedPartyTransactionsDisclosureTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_cwco_PercWaterCorporationMember_fyapGsmJmUG6MUOOExQu7Q",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation",
       "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InterestPaidNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "42101 - Disclosure - Supplemental disclosure of cash flow information (Details)",
     "role": "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails",
     "shortName": "Supplemental disclosure of cash flow information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "cwco:ScheduleOfSupplementalDisclosureOfCashFlowInformation",
       "us-gaap:CashFlowSupplementalDisclosuresTextBlock",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "cwco-20211231x10k.htm",
      "contextRef": "Duration_1_1_2021_To_12_31_2021_e9WaxrCXakyy9vxFtVwESg",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InterestPaidNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Unit_Standard_USD_sAEB9V3rlEmkhKKi0LqDUg",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 107,
   "tag": {
    "country_BS": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bahamas [Member]"
       }
      }
     },
     "localname": "BS",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_KY": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cayman Islands [Member]"
       }
      }
     },
     "localname": "KY",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "United States [Member]"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "country_VG": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Management Services Agreement With OC-BVI [Membre]"
       }
      }
     },
     "localname": "VG",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_AllCurrenciesDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Currencies [Domain]"
       }
      }
     },
     "localname": "AllCurrenciesDomain",
     "nsuri": "http://xbrl.sec.gov/currency/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_BMD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bermudian dollar [Member]"
       }
      }
     },
     "localname": "BMD",
     "nsuri": "http://xbrl.sec.gov/currency/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_BSD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bahamian dollar [Member]"
       }
      }
     },
     "localname": "BSD",
     "nsuri": "http://xbrl.sec.gov/currency/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_KYD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cayman Islands dollar [Member]"
       }
      }
     },
     "localname": "KYD",
     "nsuri": "http://xbrl.sec.gov/currency/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "currency_USD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "United States dollar [Member]"
       }
      }
     },
     "localname": "USD",
     "nsuri": "http://xbrl.sec.gov/currency/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_AboveMarketPriceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Above Market Price [Member]"
       }
      }
     },
     "localname": "AboveMarketPriceMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_AccountsReceivableOtherCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccountsReceivableGrossCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of other receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).",
        "label": "Accounts Receivable Other Current",
        "verboseLabel": "Other accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableOtherCurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_AccountsReceivableTradeCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccountsReceivableGrossCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of trade receivables. Used to reflect the current portion of the assets (receivable within one year or within the normal operating cycle if longer).",
        "label": "Accounts Receivable Trade Current",
        "verboseLabel": "Trade accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableTradeCurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_AdditionalConsecutiveIndividualRequisiteServicePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The additional consecutive individual requisite service period required for eligibility in the Employee Share Incentive Plan.",
        "label": "Additional Consecutive Individual Requisite Service Period",
        "terseLabel": "Additional consecutive individual requisite service period required for eligibility in Employee Share Incentive Plan"
       }
      }
     },
     "localname": "AdditionalConsecutiveIndividualRequisiteServicePeriod",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_AerexIndustriesIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to Aerex Industries, Inc.",
        "label": "Aerex"
       }
      }
     },
     "localname": "AerexIndustriesIncMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_AguasDeRosaritoSapiDeCvMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aguas de Rosarito S.A.P.I. de C.V [Member]"
       }
      }
     },
     "localname": "AguasDeRosaritoSapiDeCvMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_AmortizationOfIntangiblesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of intangibles [Member]"
       }
      }
     },
     "localname": "AmortizationOfIntangiblesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount required to reduce the amount of water lost by the public water distribution system.",
        "label": "Amount Required To Reduce Amount Of Water Lost By Public Water Distribution System",
        "terseLabel": "Amount required to reduce the amount of water lost by the public water distribution system"
       }
      }
     },
     "localname": "AmountRequiredToReduceAmountOfWaterLostByPublicWaterDistributionSystem",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "volumeItemType"
    },
    "cwco_AssetsContinuedOperation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as assets attributable to continued operation.",
        "label": "Assets Continued Operation",
        "terseLabel": "Total segment assets"
       }
      }
     },
     "localname": "AssetsContinuedOperation",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_AtMarketPriceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "At Market Price [Member]"
       }
      }
     },
     "localname": "AtMarketPriceMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_BalanceSheetLocationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "No definition available.",
        "label": "Balance Sheet location"
       }
      }
     },
     "localname": "BalanceSheetLocationAbstract",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_BelowMarketPriceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Below Market Price [Member]"
       }
      }
     },
     "localname": "BelowMarketPriceMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_BulkMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bulk [Member]"
       }
      }
     },
     "localname": "BulkMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_BulkRevenuesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bulk revenue [Member]"
       }
      }
     },
     "localname": "BulkRevenuesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_CapitalCommitments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of capital commitments outstanding.",
        "label": "Capital Commitments"
       }
      }
     },
     "localname": "CapitalCommitments",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_CapitalizedEngineeringLaborAndMaterialsCostMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capitalized Engineering Labor and Materials Cost [Member]"
       }
      }
     },
     "localname": "CapitalizedEngineeringLaborAndMaterialsCostMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_CashAndRestrictedCashEquivalentsHeldInForeignBank": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the amount cash held in foreign bank accounts including restricted cash.",
        "label": "Cash And Restricted Cash Equivalents Held In Foreign Bank"
       }
      }
     },
     "localname": "CashAndRestrictedCashEquivalentsHeldInForeignBank",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_CaymanWaterRetailOperationsPercentageOfGrossProfit": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the percentage of consolidated gross profit from Cayman Water retail operations.",
        "label": "Cayman Water Retail Operations, Percentage Of Gross Profit"
       }
      }
     },
     "localname": "CaymanWaterRetailOperationsPercentageOfGrossProfit",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_CaymanWaterRetailOperationsPercentageOfRevenue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the percentage of consolidated revenue from Cayman Water retail operations.",
        "label": "Cayman Water Retail Operations, Percentage Of Revenue"
       }
      }
     },
     "localname": "CaymanWaterRetailOperationsPercentageOfRevenue",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_ClosingPriceOfCommonShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Closing price of the common shares.",
        "label": "Closing Price of Common Shares"
       }
      }
     },
     "localname": "ClosingPriceOfCommonShares",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "cwco_CommitmentsAndContingenciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "na",
        "label": "Commitments And Contingencies [ Line Items ]",
        "terseLabel": "Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesLineItems",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_CommitmentsAndContingenciesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments And Contingencies [Table]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesTable",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_CommonStockOptionsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock Options [Member]"
       }
      }
     },
     "localname": "CommonStockOptionsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ConsolidatedWaterBahamasMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Water Bahamas [Member]"
       }
      }
     },
     "localname": "ConsolidatedWaterBahamasMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ConstructionInProgress": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress",
        "terseLabel": "Construction in progress",
        "verboseLabel": "Construction in progress"
       }
      }
     },
     "localname": "ConstructionInProgress",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_ConstructionInProgressPlacedInService": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the amount of construction in progress placed in service.",
        "label": "Construction In Progress Placed In Service"
       }
      }
     },
     "localname": "ConstructionInProgressPlacedInService",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_ConsumablesStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consumables stock [Member]"
       }
      }
     },
     "localname": "ConsumablesStockMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ContractWithCustomerAmountBilled": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails": {
       "order": 1.0,
       "parentTag": "cwco_ContractWithCustomerNetOverbillings",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount billed for contracts with customers during the period.",
        "label": "Contract With Customer, Amount Billed",
        "negatedLabel": "Amounts billed to date on contracts in process"
       }
      }
     },
     "localname": "ContractWithCustomerAmountBilled",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems": {
     "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": "Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Line Items]"
       }
      }
     },
     "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureLineItems",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about revenue recognized and amounts billed with regard to contracts with customers in progress.",
        "label": "Contract With Customer, In Progress, Revenue Recognized And Amounts Billed, Disclosure [Table]"
       }
      }
     },
     "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledDisclosureTable",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for revenue recognized and amounts billed with regard to contracts with customers in progress.",
        "label": "Contract With Customer, In Progress, Revenue Recognized And Amounts Billed [Table Text Block]",
        "terseLabel": "Summary of information relative to revenue recognized and amounts billed on contracts in progress"
       }
      }
     },
     "localname": "ContractWithCustomerInProgressRevenueRecognizedAndAmountsBilledTableTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_ContractWithCustomerNetOverbillings": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net amount of overbillings for contracts with customers, during the period.",
        "label": "Contract With Customer, Net Overbillings",
        "totalLabel": "Net contract asset"
       }
      }
     },
     "localname": "ContractWithCustomerNetOverbillings",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_ContractWithCustomerRetainage": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails": {
       "order": 2.0,
       "parentTag": "cwco_ContractWithCustomerNetOverbillings",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of retainage with contract for customers.",
        "label": "Contract With Customer Retainage",
        "terseLabel": "Retainage"
       }
      }
     },
     "localname": "ContractWithCustomerRetainage",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of revenues and general and administrative expenses"
       }
      }
     },
     "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesAbstract",
     "nsuri": "http://www.cwco.com/20211231",
     "xbrltype": "stringItemType"
    },
    "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of revenues and general and administrative expenses [Line Items]"
       }
      }
     },
     "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesLineItems",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost Of Revenues And General And Administrative Expenses [Table]"
       }
      }
     },
     "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTable",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for cost of revenues and general and administrative expenses.",
        "label": "Cost Of Revenues And General And Administrative Expenses [Table Text Block]",
        "verboseLabel": "Schedule of cost of revenues and general and administrative expenses"
       }
      }
     },
     "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTableTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for cost of revenues and general and administrative expenses.",
        "label": "Cost Of Revenues And General And Administrative Expenses [Text Block]",
        "terseLabel": "Cost of revenues and general and administrative expenses"
       }
      }
     },
     "localname": "CostOfRevenuesAndGeneralAndAdministrativeExpensesTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpenses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_CriteriaForRecognizingInvestmentAtCost": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the conditions to recognize the investment value in cost.",
        "label": "Criteria For Recognizing Investment At Cost",
        "terseLabel": "Criteria for recognizing investment at cost"
       }
      }
     },
     "localname": "CriteriaForRecognizingInvestmentAtCost",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_CustomerBacklogMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer backlogs"
       }
      }
     },
     "localname": "CustomerBacklogMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DeferredTaxAssetsLandBasisDifference": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to land basis differences.",
        "label": "Deferred Tax Assets Land Basis Difference",
        "terseLabel": "Land basis difference - Mexico"
       }
      }
     },
     "localname": "DeferredTaxAssetsLandBasisDifference",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DeferredTaxAssetsStartupCosts": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to start-up costs.",
        "label": "Deferred Tax Assets Start-up Costs",
        "terseLabel": "Start-up costs - Mexico"
       }
      }
     },
     "localname": "DeferredTaxAssetsStartupCosts",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This member stands for 25% of matching contribution by employer under the defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, 25 Percent of Match [Member]"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContribution25PercentOfMatchMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about percentage employer matches of the employee's percentage contribution matched.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match [Axis]"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatchAxis",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about percentage employer matches of the employee's percentage contribution matched.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match [Domain]"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatchDomain",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DepositsHeldInForeignBank": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deposits held in foreign banks, as stated in equivalent United States dollars.",
        "label": "Deposits held in foreign bank"
       }
      }
     },
     "localname": "DepositsHeldInForeignBank",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DepreciationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation [Member]"
       }
      }
     },
     "localname": "DepreciationMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DirectorsFeesAndExpensesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Directors' fees and expenses [Member]"
       }
      }
     },
     "localname": "DirectorsFeesAndExpensesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DiscontinuedOperationsNonRecoverableExpenses": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to non-recoverable expense in discontinued operations.",
        "label": "Discontinued Operations, Non-Recoverable Expenses",
        "terseLabel": "Amount of non-recoverable expenses"
       }
      }
     },
     "localname": "DiscontinuedOperationsNonRecoverableExpenses",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DiscountedCashFlowMethodMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Discounted Cash Flow Method [Member]"
       }
      }
     },
     "localname": "DiscountedCashFlowMethodMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as land and rights of way, attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Land And Rights Of Way",
        "terseLabel": "Land"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationLandAndRightsOfWay",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 2.0,
       "parentTag": "cwco_OperatingLeaseRightOfUseAssetNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Lease, Current",
        "terseLabel": "Current assets of discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationLeaseCurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 2.0,
       "parentTag": "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group Including Discontinued Operation Lease Current Liabilities",
        "terseLabel": "Current liabilities of discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationLeaseCurrentLiabilities",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 4.0,
       "parentTag": "cwco_OperatingLeaseRightOfUseAssetNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as leases attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Lease, Noncurrent",
        "terseLabel": "Long-term assets of discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationLeaseNoncurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of impairment attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Other Expense, Impairment",
        "terseLabel": "Impairment loss for Mexico assets - discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOtherExpenseImpairment",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of disposal group, including discontinued operation, value added taxes receivable.",
        "label": "Disposal Group, Including Discontinued Operation, Value Added Taxes Receivable",
        "terseLabel": "Value added taxes receivable (net of allowance of $967,115 and $316,217, respectively)"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationValueAddedTaxesReceivable",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_DistributionSystemsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Distribution Systems [Member]"
       }
      }
     },
     "localname": "DistributionSystemsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_DividendsPerShareDeclared": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends declared during the period for each share of common stock and redeemable preferred stock outstanding.",
        "label": "Dividends Per Share Declared"
       }
      }
     },
     "localname": "DividendsPerShareDeclared",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDividendsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "cwco_DividendsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for dividends.",
        "label": "Dividends [Text Block]",
        "terseLabel": "Dividends"
       }
      }
     },
     "localname": "DividendsTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDividends"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_DocumentAndEntityInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Document and Entity Information [Abstract]",
        "label": "Document and Entity Information"
       }
      }
     },
     "localname": "DocumentAndEntityInformationAbstract",
     "nsuri": "http://www.cwco.com/20211231",
     "xbrltype": "stringItemType"
    },
    "cwco_EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to goodwill impairment.",
        "label": "Effective Income Tax Rate Reconciliation, Goodwill Impairment, Percent",
        "terseLabel": "Goodwill impairment"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationGoodwillImpairmentPercent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_EffectiveIncomeTaxRateReconciliationPermanentItems": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage 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 Permanent items.",
        "label": "Effective Income Tax Rate Reconciliation Permanent Items",
        "verboseLabel": "Permanent items"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationPermanentItems",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_EmployeeCostsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee costs [Member]"
       }
      }
     },
     "localname": "EmployeeCostsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_EmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employees [Member]"
       }
      }
     },
     "localname": "EmployeesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_EmploymentAgreementBaseAnnualSalaries": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the base annual salary amount, under the employment agreement.",
        "label": "Employment Agreement Base Annual Salaries"
       }
      }
     },
     "localname": "EmploymentAgreementBaseAnnualSalaries",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_EntityWideRevenuesMajorCustomerPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of revenue generated from a single external customer that accounts for 10 percent or more of an entity's revenues.",
        "label": "Entity Wide Revenues Major Customer Percentage",
        "terseLabel": "Percentage of consolidated revenues"
       }
      }
     },
     "localname": "EntityWideRevenuesMajorCustomerPercentage",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_EquityIncentivePlan2008Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Incentive Plan2008 [Member]"
       }
      }
     },
     "localname": "EquityIncentivePlan2008Member",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_EstimatedFairValueCarryingAmountExceededPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the exceeded percentage of estimated fair value of reporting segments.",
        "label": "Estimated Fair Value carrying Amount Exceeded Percentage",
        "terseLabel": "Estimated Fair Value Carrying Amount Exceeded Percentage"
       }
      }
     },
     "localname": "EstimatedFairValueCarryingAmountExceededPercentage",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "cwco_EstimatedFairValuePercentageSegmentReportingInformation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the estimated fair value of reporting segments.",
        "label": "Estimated Fair Value Percentage Segment Reporting Information",
        "verboseLabel": "Estimated Fair Value Percentage Segment Reporting Information"
       }
      }
     },
     "localname": "EstimatedFairValuePercentageSegmentReportingInformation",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_FairValueDeterminingMethodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Determining Method [Axis]"
       }
      }
     },
     "localname": "FairValueDeterminingMethodAxis",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_FairValueDeterminingMethodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Determining Method [Domain]"
       }
      }
     },
     "localname": "FairValueDeterminingMethodDomain",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_FirstPhaseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "First Phase [Member]"
       }
      }
     },
     "localname": "FirstPhaseMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_FuelOilMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fuel oil [Member]"
       }
      }
     },
     "localname": "FuelOilMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_GrossProfitMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to gross profit member.",
        "label": "Gross Profit [Member]"
       }
      }
     },
     "localname": "GrossProfitMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_GuaranteeFee": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of fee related to guarantee of suspension.",
        "label": "Guarantee Fee",
        "terseLabel": "Guarantee amount required for suspension"
       }
      }
     },
     "localname": "GuaranteeFee",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_GuidelinePublicCompanyMethodMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Guideline Public Company Method [Member]"
       }
      }
     },
     "localname": "GuidelinePublicCompanyMethodMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations that are not subject to income tax, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income Loss from Continuing Operations before Income Taxes, Foreign Not Subject To Income Taxes",
        "verboseLabel": "Foreign (not subject to income taxes)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeignNotSubjectToIncomeTaxes",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_IncomeLossFromDiscontinuedOperations": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from a discontinued operation.",
        "label": "Income Loss from Discontinued Operations",
        "netLabel": "Net loss from discontinued operations",
        "verboseLabel": "Less discontinued operations"
       }
      }
     },
     "localname": "IncomeLossFromDiscontinuedOperations",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_IncomeLossFromEquityMethodInvestmentsAndSubsidiaries": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This items represents the entity's equity in earnings and profit sharing rights earned for the period from its unconsolidated equity method investee.",
        "label": "Income Loss From Equity Method Investments And Subsidiaries",
        "negatedLabel": "Profit-sharing and equity in earnings of OC-BVI"
       }
      }
     },
     "localname": "IncomeLossFromEquityMethodInvestmentsAndSubsidiaries",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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 in current liabilities classified as other and in obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Accounts Payable and Other Current Liabilities and Contract with Customer, Liability",
        "terseLabel": "Accounts payable(including related parties), accrued expenses and other current liabilities, and contract liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndOtherCurrentLiabilitiesAndContractWithCustomerLiability",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 17.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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 and right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.",
        "label": "Increase (Decrease) in Accounts Receivable And Contract with Customer, Asset",
        "negatedLabel": "Accounts receivable and contract assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivableAndContractWithCustomerAsset",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_InsuranceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insurance [Member]"
       }
      }
     },
     "localname": "InsuranceMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_InventoryCurrentAndNoncurrent": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of inventory current and non current.",
        "label": "Inventory Current And Noncurrent",
        "terseLabel": "Inventory, current and non-current"
       }
      }
     },
     "localname": "InventoryCurrentAndNoncurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_LabEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lab equipment [Member]"
       }
      }
     },
     "localname": "LabEquipmentMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for lessee operating lease related assets and liabilities.",
        "label": "Lessee Operating Lease related Assets And Liabilities [Table Text Block]",
        "verboseLabel": "Schedule of lease-related assets and liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseRelatedAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_ManagementContractsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to management contracts.",
        "label": "Facility management contracts"
       }
      }
     },
     "localname": "ManagementContractsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ManagementEmployeesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Management Employees [Member]"
       }
      }
     },
     "localname": "ManagementEmployeesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ManufacturingRevenuesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing revenue [Member]"
       }
      }
     },
     "localname": "ManufacturingRevenuesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ManufacturingUnitsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Manufacturing Units [Member]"
       }
      }
     },
     "localname": "ManufacturingUnitsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_MaterialsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Materials [Member]"
       }
      }
     },
     "localname": "MaterialsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_MexicoProjectDevelopmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represent the information pertaining to Mexico Project Development.",
        "label": "Mexico Project Development"
       }
      }
     },
     "localname": "MexicoProjectDevelopmentMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_NSCAguaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "NSC Agua [Member]"
       }
      }
     },
     "localname": "NSCAguaMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transfers from Construction in Progress to property, plant and equipment, net.",
        "label": "Non cash Transactions, Transfers from Construction in Progress to property, plant and equipment, net",
        "verboseLabel": "Transfers from construction in progress to property, plant and equipment"
       }
      }
     },
     "localname": "NonCashTransactionsTransfersFromConstructionInProgressToPropertyPlantAndEquipmentNet",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_NonExecutiveDirectorsSharePlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non Executive Directors Share Plan [Member]"
       }
      }
     },
     "localname": "NonExecutiveDirectorsSharePlanMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_NonperformancebasedGrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Performance-Based Grants [Member]"
       }
      }
     },
     "localname": "NonperformancebasedGrantsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_NumberOfCustomers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to the number of customers.",
        "label": "Number of Customers",
        "terseLabel": "Number of customers"
       }
      }
     },
     "localname": "NumberOfCustomers",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "cwco_NumberOfDaysAfterConsumptionBillingsAreCollected": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of days after consumption billings are collected.",
        "label": "Number Of Days After Consumption Billings Are Collected",
        "terseLabel": "Number of days after consumption billings are collected"
       }
      }
     },
     "localname": "NumberOfDaysAfterConsumptionBillingsAreCollected",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of days after consumption billings are considered past due.",
        "label": "Number Of Days After Consumption Billings Are Considered Past Due",
        "terseLabel": "Number of days after consumption billings are considered past due"
       }
      }
     },
     "localname": "NumberOfDaysAfterConsumptionBillingsAreConsideredPastDue",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of days employee option to purchase preferred stock must be exercised.",
        "label": "Number Of Days Employee Option To Purchase Preferred Stock Must Be Exercised",
        "terseLabel": "Number of days employee option to purchase preferred stock must be exercised"
       }
      }
     },
     "localname": "NumberOfDaysEmployeeOptionToPurchasePreferredStockMustBeExercised",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_NumberOfDaysOfAverageTradingPriceOfCommonStock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of average trading price of the common stock.",
        "label": "Number Of Days Of Average Trading Price Of Common Stock",
        "terseLabel": "Number of average trading price of the common stock"
       }
      }
     },
     "localname": "NumberOfDaysOfAverageTradingPriceOfCommonStock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_NumberOfDaysToSubmitListOfNonRecoverableExpenses": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of days to submit list of non-recoverable expenses made.",
        "label": "Number of Days to Submit List of Non-Recoverable Expenses",
        "terseLabel": "Number of days to submit list of non-recoverable expenses made"
       }
      }
     },
     "localname": "NumberOfDaysToSubmitListOfNonRecoverableExpenses",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_OneCustomerMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining to customer.",
        "label": "One Customer [Member]"
       }
      }
     },
     "localname": "OneCustomerMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_OperatingLeaseAssetsCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 1.0,
       "parentTag": "cwco_OperatingLeaseRightOfUseAssetNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of Operating Lease Assets Current.",
        "label": "Operating Lease Assets Current",
        "verboseLabel": "Operating lease assets, current"
       }
      }
     },
     "localname": "OperatingLeaseAssetsCurrent",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OperatingLeaseCostsDiscontinuedOperations": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease cost related to discontinued operations, excluding expense for lease with term of one month or less.",
        "label": "Operating Lease Costs Discontinued Operations",
        "terseLabel": "Lease costs - discontinued operations"
       }
      }
     },
     "localname": "OperatingLeaseCostsDiscontinuedOperations",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OperatingLeaseDiscontinuedOperationsPayments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease discontinued operations, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Discontinued Operations, Payments",
        "terseLabel": "Operating cash flows from operating leases - discontinued operations"
       }
      }
     },
     "localname": "OperatingLeaseDiscontinuedOperationsPayments",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OperatingLeaseLiabilitiesContinuingOperations": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, continuing operations.",
        "label": "Operating Lease Liabilities, Continuing Operations",
        "terseLabel": "Total lease obligations"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesContinuingOperations",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, including discontinued operations.",
        "label": "Operating Lease, Liability, Including Discontinued Operations",
        "totalLabel": "Total lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityIncludingDiscontinuedOperations",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OperatingLeaseRightOfUseAssetNet": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset net under operating lease.",
        "label": "Operating Lease Right of Use Asset Net",
        "totalLabel": "Total lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetNet",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_OptionAgreementExpirationDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expiration date of the option agreement.",
        "label": "Option Agreement Expiration Date"
       }
      }
     },
     "localname": "OptionAgreementExpirationDate",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "cwco_OptionAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Option agreement [Member]"
       }
      }
     },
     "localname": "OptionAgreementMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_OtherAssetsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for other assets.",
        "label": "Other Assets [Policy Text Block]",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsPolicyTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_OtherCreditDeviceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Credit Device [Member]",
        "verboseLabel": "Other [Member]."
       }
      }
     },
     "localname": "OtherCreditDeviceMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_PaymentForLandAndRightOfWayHeldForDevelopment": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow from the acquisition of real estate intended to generate income for the owner; excludes land acquired for use by the owner.",
        "label": "Payment For Land And Right Of Way Held For development",
        "terseLabel": "Payments for land and rights of way held for development"
       }
      }
     },
     "localname": "PaymentForLandAndRightOfWayHeldForDevelopment",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_PaymentsForOptionExercised": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow associated with the option exercised by the entity.",
        "label": "Payments For Option Exercised"
       }
      }
     },
     "localname": "PaymentsForOptionExercised",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_PaymentsToAcquireCertificatesOfDeposit": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow from purchase of certificates of deposit.",
        "label": "Payments to Acquire Certificates of Deposit",
        "negatedLabel": "Purchase of certificate of deposit"
       }
      }
     },
     "localname": "PaymentsToAcquireCertificatesOfDeposit",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_PaymentsToEnterOptionAgreement": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the amount spent to enter a stock option agreement.",
        "label": "Payments To Enter Option Agreement"
       }
      }
     },
     "localname": "PaymentsToEnterOptionAgreement",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_PercNonControllingInterestAtAcquisitionDate": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Perc non controlling interest at acquisition date.",
        "label": "PERC Non Controlling Interest At Acquisition Date",
        "terseLabel": "Acquisition of non-controlling interests"
       }
      }
     },
     "localname": "PercNonControllingInterestAtAcquisitionDate",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_PercWaterCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This member stands for PERC Water Corporation.",
        "label": "PERC Water Corporation"
       }
      }
     },
     "localname": "PercWaterCorporationMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_PercentageOfBadDebts": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage representing the bad debts.",
        "label": "Percentage Of Bad Debts"
       }
      }
     },
     "localname": "PercentageOfBadDebts",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_PercentageOfVotingInterestAcquiredThroughOptionAgreement": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of voting interest acquired through Option agreements.",
        "label": "Percentage of Voting Interest Acquired through Option Agreement"
       }
      }
     },
     "localname": "PercentageOfVotingInterestAcquiredThroughOptionAgreement",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_PerformancebasedGrantsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance-Based Grants [Member]"
       }
      }
     },
     "localname": "PerformancebasedGrantsMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_PeriodInWhichConstructionMustBeCompleted": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The period in which construction must be completed.",
        "label": "Period In Which Construction Must Be Completed",
        "terseLabel": "Period in which construction must be completed"
       }
      }
     },
     "localname": "PeriodInWhichConstructionMustBeCompleted",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_PeriodRequiredToOperateAndMaintainPlantAndAqueduct": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The period required to operate and maintain the plant and aqueduct.",
        "label": "Period Required To Operate And Maintain Plant And Aqueduct"
       }
      }
     },
     "localname": "PeriodRequiredToOperateAndMaintainPlantAndAqueduct",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_PlantAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plant And Equipment [Member]"
       }
      }
     },
     "localname": "PlantAndEquipmentMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ProfessionalsFeeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Professional fees [Member]"
       }
      }
     },
     "localname": "ProfessionalsFeeMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ProfitLossFromSubsidiaries": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This item represents the entity's share of profit or (loss) from its unconsolidated equity method investee.",
        "label": "Profit Loss From Subsidiaries",
        "verboseLabel": "Profit-sharing income from OC-BVI"
       }
      }
     },
     "localname": "ProfitLossFromSubsidiaries",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_RepaymentOfInterCompanyLoanPayable": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the repayment of an inter-company loan payable through the issuance of shares of subsidiary stock.",
        "label": "Repayment of Inter Company Loan Payable",
        "verboseLabel": "Repayment of inter-company loan payable"
       }
      }
     },
     "localname": "RepaymentOfInterCompanyLoanPayable",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_RetailRevenuesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retail revenue [Member]"
       }
      }
     },
     "localname": "RetailRevenuesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_RetirementPlanAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Plan [Axis]"
       }
      }
     },
     "localname": "RetirementPlanAxis",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_RetirementPlanDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Plan [Domain]"
       }
      }
     },
     "localname": "RetirementPlanDomain",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_RoyaltiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retail license royalties [Member]"
       }
      }
     },
     "localname": "RoyaltiesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for schedule of property plant and equipment useful life.",
        "label": "Schedule Of Property Plant And Equipment Useful Life [Table Text Block]",
        "terseLabel": "Schedule of Estimated useful lives"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_ScheduleOfSupplementalDisclosureOfCashFlowInformation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Schedule of Supplemental Disclosure of Cash Flow Information",
        "terseLabel": "Schedule of Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "ScheduleOfSupplementalDisclosureOfCashFlowInformation",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "cwco_SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The processing capacity per day seawater reverse osmosis desalination plant.",
        "label": "Seawater Reverse Osmosis Desalination Plant Per Day Processing Capacity"
       }
      }
     },
     "localname": "SeawaterReverseOsmosisDesalinationPlantPerDayProcessingCapacity",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "volumeItemType"
    },
    "cwco_SecondPhaseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Second Phase [Member]"
       }
      }
     },
     "localname": "SecondPhaseMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_SegmentRetailMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the information pertaining to Retail.",
        "label": "Retail [Member]"
       }
      }
     },
     "localname": "SegmentRetailMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ServicesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Services [Member]"
       }
      }
     },
     "localname": "ServicesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ServicesRevenuesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Services revenue [Member]"
       }
      }
     },
     "localname": "ServicesRevenuesMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The measurement period for cumulative financial performance targets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Measurement Period",
        "terseLabel": "Cumulative financial performance targets measurement period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMeasurementPeriod",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for non vested options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Non Vested Outstanding Weighted Average Remaining Contractual Term"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOutstandingWeightedAverageRemainingContractualTerm",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_SparePartsStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Spare parts stock [Member]"
       }
      }
     },
     "localname": "SparePartsStockMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_StockholdersEquityNoteConversionRatioCommonShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of common shares received upon conversion of preferred shares dependent upon specific criteria.",
        "label": "Stockholders Equity Note Conversion Ratio Common Shares",
        "terseLabel": "Number of common shares received upon conversion of preferred shares dependent upon specific criteria"
       }
      }
     },
     "localname": "StockholdersEquityNoteConversionRatioCommonShares",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "cwco_StockholdersEquityNoteConversionRatioPreferredShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of preferred shares converted to common shares dependent upon specific criteria.",
        "label": "Stockholders Equity Note Conversion Ratio Preferred Shares",
        "terseLabel": "Number of preferred shares converted to common shares dependent upon specific criteria"
       }
      }
     },
     "localname": "StockholdersEquityNoteConversionRatioPreferredShares",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "cwco_TermOfForeignExchangeRiskToDollarForCertainCurrencies": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The duration certain foreign currencies are fixed to the dollar.",
        "label": "Term Of Foreign Exchange Risk To Dollar For Certain Currencies",
        "terseLabel": "Duration certain foreign currencies are fixed to the dollar"
       }
      }
     },
     "localname": "TermOfForeignExchangeRiskToDollarForCertainCurrencies",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "cwco_TotalPercentageOfOwnershipInterestInAcquiredCompany": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total percentage of ownership interest in an acquired company.",
        "label": "Total Percentage Of Ownership Interest In An Acquired Company"
       }
      }
     },
     "localname": "TotalPercentageOfOwnershipInterestInAcquiredCompany",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_TotalVotingInterestPercentageAfterConversionOfLoan": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total percentage of ownership interest in an acquired company.",
        "label": "Total Voting Interest Percentage After Conversion Of Loan"
       }
      }
     },
     "localname": "TotalVotingInterestPercentageAfterConversionOfLoan",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "cwco_TradeNameMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade names"
       }
      }
     },
     "localname": "TradeNameMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_TransfersBetweenInventoryAndPropertyPlantAndEquipment": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transfers from inventory to property plant and equipment and construction in progress.",
        "label": "Transfers Between Inventory And Property Plant And Equipment",
        "verboseLabel": "Transfers from inventory to property, plant and equipment and construction in progress"
       }
      }
     },
     "localname": "TransfersBetweenInventoryAndPropertyPlantAndEquipment",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_TypeOfPhasesAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Type Of Phases [Axis]"
       }
      }
     },
     "localname": "TypeOfPhasesAxis",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "cwco_TypeOfPhasesDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Type Of Phases [Domain]"
       }
      }
     },
     "localname": "TypeOfPhasesDomain",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_ValueAddedTaxReceivableAllowance": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on value added taxes receivable.",
        "label": "Value Added Tax Receivable Allowance",
        "terseLabel": "Value added tax, net of allowance"
       }
      }
     },
     "localname": "ValueAddedTaxReceivableAllowance",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "cwco_WSCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "WSC [Member]"
       }
      }
     },
     "localname": "WSCMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_WaterAndSewerageCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Water and Sewerage Corporation [Member]"
       }
      }
     },
     "localname": "WaterAndSewerageCorporationMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "cwco_WaterStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Water stock [Member]"
       }
      }
     },
     "localname": "WaterStockMember",
     "nsuri": "http://www.cwco.com/20211231",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r698",
      "r699",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r698",
      "r699",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r698",
      "r699",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r698",
      "r699",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r701"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 3 such as an Office Park",
        "label": "Entity Address, Address Line Three"
       }
      }
     },
     "localname": "EntityAddressAddressLine3",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCountry": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ISO 3166-1 alpha-2 country code.",
        "label": "Entity Address, Country"
       }
      }
     },
     "localname": "EntityAddressCountry",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "countryCodeItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "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.",
        "label": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r703"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r696"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r704"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r698",
      "r699",
      "r700"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r695"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r697"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.cwco.com/role/DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_ConsolidatedEntitiesAxis": {
     "auth_ref": [
      "r149",
      "r331",
      "r335",
      "r340",
      "r510",
      "r511",
      "r516",
      "r517",
      "r583",
      "r692"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Axis]"
       }
      }
     },
     "localname": "ConsolidatedEntitiesAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ConsolidatedEntitiesDomain": {
     "auth_ref": [
      "r149",
      "r331",
      "r335",
      "r340",
      "r510",
      "r511",
      "r516",
      "r517",
      "r583",
      "r692"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Entities [Domain]"
       }
      }
     },
     "localname": "ConsolidatedEntitiesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CurrencyAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Currency [Axis]"
       }
      }
     },
     "localname": "CurrencyAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Domain]"
       }
      }
     },
     "localname": "EquityMethodInvesteeNameDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r246",
      "r379",
      "r384",
      "r662"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r342",
      "r351",
      "r415",
      "r417",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r660",
      "r663",
      "r693",
      "r694"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r342",
      "r351",
      "r415",
      "r417",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r660",
      "r663",
      "r693",
      "r694"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r246",
      "r379",
      "r384",
      "r662"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_OwnershipAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Axis]"
       }
      }
     },
     "localname": "OwnershipAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_OwnershipDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Ownership [Domain]"
       }
      }
     },
     "localname": "OwnershipDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r342",
      "r351",
      "r390",
      "r415",
      "r417",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r660",
      "r663",
      "r693",
      "r694"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Range [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r342",
      "r351",
      "r390",
      "r415",
      "r417",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r660",
      "r663",
      "r693",
      "r694"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Range [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r242",
      "r243",
      "r379",
      "r383",
      "r661",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r242",
      "r243",
      "r379",
      "r383",
      "r661",
      "r676",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r688",
      "r689",
      "r690",
      "r691"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r248",
      "r579"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Relationship to Entity [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "stpr_CA": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "California [Member]"
       }
      }
     },
     "localname": "CA",
     "nsuri": "http://xbrl.sec.gov/stpr/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "stpr_FL": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "FLORIDA"
       }
      }
     },
     "localname": "FL",
     "nsuri": "http://xbrl.sec.gov/stpr/2021",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting policies"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.",
        "label": "Accounts Payable and Accrued Liabilities, Current",
        "verboseLabel": "Accounts payable, accrued expenses and other current liabilities"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableRelatedPartiesCurrent": {
     "auth_ref": [
      "r72",
      "r148",
      "r578",
      "r580"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount for accounts payable to related parties. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts Payable, Related Parties, Current",
        "terseLabel": "Accounts payable outstanding",
        "verboseLabel": "Accounts payable - related parties"
       }
      }
     },
     "localname": "AccountsPayableRelatedPartiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "auth_ref": [
      "r249",
      "r250"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "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, classified as current.",
        "label": "Accounts Receivable, Gross, Current",
        "totalLabel": "Accounts Receivable, Gross, Current"
       }
      }
     },
     "localname": "AccountsReceivableGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNet": {
     "auth_ref": [
      "r53",
      "r641",
      "r677"
     ],
     "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, Net"
       }
      }
     },
     "localname": "AccountsReceivableNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r35",
      "r53",
      "r249",
      "r250"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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, Net, Current",
        "totalLabel": "Accounts receivable, net",
        "verboseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "auth_ref": [
      "r38",
      "r39",
      "r75"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 3.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, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Employee Benefits, Current",
        "verboseLabel": "Accrued compensation"
       }
      }
     },
     "localname": "AccruedEmployeeBenefitsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedAmortizationOfOtherDeferredCosts": {
     "auth_ref": [
      "r71"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amortization of other deferred costs capitalized at the end of the reporting period. Does not include deferred finance costs, deferred acquisition costs of insurance companies, or deferred leasing costs for real estate operations.",
        "label": "Accumulated Amortization of Other Deferred Costs"
       }
      }
     },
     "localname": "AccumulatedAmortizationOfOtherDeferredCosts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r70",
      "r309"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "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, Depletion and Amortization, Property, Plant, and Equipment",
        "verboseLabel": "Less accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r288"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r54",
      "r451",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 3.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": "Additional Paid in Capital",
        "verboseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r447",
      "r448",
      "r449",
      "r528"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional paid-in capital [Member]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentForAmortizationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization [Abstract]",
        "terseLabel": "Accumulated amortization"
       }
      }
     },
     "localname": "AdjustmentForAmortizationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r420",
      "r422",
      "r454",
      "r455"
     ],
     "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": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r422",
      "r443",
      "r453"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Allocated Share-based Compensation Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpenseNetOfTax": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of expense for award under share-based payment arrangement.",
        "label": "Allocated Share-based Compensation Expense, Net of Tax"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpenseNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": {
     "auth_ref": [
      "r254",
      "r275"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allowance for credit loss on financing receivable.",
        "label": "Allowance for Credit Losses on Financing Receivables [Table Text Block]",
        "terseLabel": "Schedule of Allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r59",
      "r257",
      "r271"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccountsReceivableNetCurrent",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Allowance for Doubtful Accounts Receivable, Current",
        "negatedLabel": "Allowance for doubtful accounts",
        "periodEndLabel": "Ending allowance for doubtful accounts",
        "periodStartLabel": "Opening allowance for doubtful accounts"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails",
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": {
     "auth_ref": [
      "r274"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Recovery",
        "terseLabel": "Recovery of accounts written off"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": {
     "auth_ref": [
      "r273"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.",
        "label": "Allowance for Doubtful Accounts Receivable, Write-offs",
        "negatedLabel": "Accounts written off during the year"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r127",
      "r286",
      "r295"
     ],
     "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 of Intangible Assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AreaOfLand": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area of land held.",
        "label": "Area of Land"
       }
      }
     },
     "localname": "AreaOfLand",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r143",
      "r223",
      "r230",
      "r237",
      "r267",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r510",
      "r516",
      "r541",
      "r585",
      "r587",
      "r622",
      "r643"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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",
        "totalLabel": "Total assets",
        "verboseLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "verboseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r36",
      "r37",
      "r89",
      "r143",
      "r267",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r510",
      "r516",
      "r541",
      "r585",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets",
        "verboseLabel": "Current"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Noncurrent [Abstract]",
        "verboseLabel": "Noncurrent"
       }
      }
     },
     "localname": "AssetsNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Assets",
        "terseLabel": "Assets of discontinued operations",
        "totalLabel": "Total assets of discontinued operations"
       }
      }
     },
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r306",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Assets, Current",
        "verboseLabel": "Current assets of discontinued operations"
       }
      }
     },
     "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r423",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r521",
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of preparation"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BuildingMember": {
     "auth_ref": [
      "r308"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities.",
        "label": "Building [Member]"
       }
      }
     },
     "localname": "BuildingMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [
      "r414",
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r414",
      "r416",
      "r497",
      "r498"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": {
     "auth_ref": [
      "r496"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.",
        "label": "Business Acquisition, Percentage of Voting Interests Acquired",
        "verboseLabel": "Ownership interest acquired"
       }
      }
     },
     "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "auth_ref": [
      "r503",
      "r504",
      "r505"
     ],
     "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": "Business Combination, Consideration Transferred",
        "verboseLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationConsiderationTransferred1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r66",
      "r587",
      "r673",
      "r674"
     ],
     "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",
        "terseLabel": "Bank accounts"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r33",
      "r66",
      "r129"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash and cash equivalents",
        "verboseLabel": "Cash and cash equivalents at end of period"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of cash and cash equivalent balance.",
        "label": "Cash and Cash Equivalents [Axis]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsDisclosureTextBlock": {
     "auth_ref": [
      "r42"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for cash and cash equivalent footnotes,  which may include the types of deposits and money market instruments, applicable carrying amounts, restricted amounts and compensating balance arrangements. Cash and equivalents include: (1) currency on hand (2) demand deposits with banks or financial institutions (3) other kinds of accounts that have the general characteristics of demand deposits (4) 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. Generally, only investments maturing within three months from the date of acquisition qualify.",
        "label": "Cash and Cash Equivalents Disclosure [Text Block]",
        "terseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsLineItems": {
     "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": "Cash and Cash Equivalents [Line Items]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r42",
      "r130"
     ],
     "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, Policy [Policy Text Block]",
        "verboseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r123",
      "r129",
      "r135"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for 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.",
        "periodEndLabel": "Cash and cash equivalents at end of period",
        "periodStartLabel": "Cash and cash equivalents at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents [Abstract]"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r123",
      "r129",
      "r135"
     ],
     "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",
        "negatedPeriodEndLabel": "Less: cash and cash equivalents at end of period - discontinued operations",
        "periodStartLabel": "Cash and cash equivalents at beginning of period - discontinued operations"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": {
     "auth_ref": [
      "r123",
      "r549"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding 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), Excluding Exchange Rate Effect",
        "totalLabel": "Net (decrease) increase in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r66"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash Equivalents, at Carrying Value",
        "terseLabel": "Short term deposits"
       }
      }
     },
     "localname": "CashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails",
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowSupplementalDisclosuresTextBlock": {
     "auth_ref": [
      "r136"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Cash Flow, Supplemental Disclosures [Text Block]",
        "terseLabel": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "CashFlowSupplementalDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations": {
     "auth_ref": [
      "r23",
      "r123"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) of operating activities of discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Cash Provided by (Used in) Operating Activities, Discontinued Operations",
        "verboseLabel": "Net cash used in operating activities - discontinued operations"
       }
      }
     },
     "localname": "CashProvidedByUsedInOperatingActivitiesDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashUninsuredAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation.",
        "label": "Cash, Uninsured Amount"
       }
      }
     },
     "localname": "CashUninsuredAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CertificatesOfDepositAtCarryingValue": {
     "auth_ref": [
      "r66"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A savings certificate entitling the Entity (that is, bearer) to receive interest at an established maturity date, based upon a fixed interest rate.  A certificate of deposit may be issued in any denomination. Certificates of deposit are generally issued by commercial banks and, therefore, insured by the FDIC (up to the prescribed limit).  Certificates of deposit generally restrict holders from withdrawing funds on demand without the incurrence of penalties.  Generally, only certificates of deposit with original maturities of three months or less qualify as cash equivalents. Original maturity means original maturity to the entity holding the investment. As a related example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months.",
        "label": "Certificates of Deposit, at Carrying Value",
        "terseLabel": "Certificate of deposit"
       }
      }
     },
     "localname": "CertificatesOfDepositAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CertificatesOfDepositMember": {
     "auth_ref": [
      "r639"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Short to medium-term investment available at banks and savings and loan institutions where a customer agrees to lend money to the institution for a certain amount of time and is paid a predetermined rate of interest. Certificates of deposit (CD) are typically Federal Deposit Insurance Corporation (FDIC) insured.",
        "label": "Certificate of deposit [Member]"
       }
      }
     },
     "localname": "CertificatesOfDepositMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r142",
      "r143",
      "r174",
      "r178",
      "r181",
      "r184",
      "r186",
      "r195",
      "r196",
      "r197",
      "r267",
      "r331",
      "r335",
      "r336",
      "r337",
      "r340",
      "r341",
      "r349",
      "r350",
      "r352",
      "r353",
      "r541",
      "r702"
     ],
     "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.",
        "label": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureInventoryDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r79",
      "r326",
      "r627",
      "r649"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "verboseLabel": "Commitments and contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r323",
      "r324",
      "r325",
      "r329",
      "r679"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonClassAMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Classification of common stock representing ownership interest in a corporation.",
        "label": "Common Class A [Member]"
       }
      }
     },
     "localname": "CommonClassAMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonClassBMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Classification of common stock that has different rights than Common Class A, representing ownership interest in a corporation.",
        "label": "Common Class B [Member]"
       }
      }
     },
     "localname": "CommonClassBMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "auth_ref": [
      "r80"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate number of common shares reserved for future issuance.",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance"
       }
      }
     },
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockDividendsPerShareDeclared": {
     "auth_ref": [
      "r356"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding.",
        "label": "Common Stock, Dividends, Per Share, Declared",
        "terseLabel": "Dividends declared per common and redeemable preferred shares"
       }
      }
     },
     "localname": "CommonStockDividendsPerShareDeclared",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r151",
      "r152",
      "r528"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r52"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "verboseLabel": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r52"
     ],
     "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",
        "verboseLabel": "Common stock, authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r52"
     ],
     "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",
        "verboseLabel": "Common stock, issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r52",
      "r354"
     ],
     "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",
        "verboseLabel": "Common stock, outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r52",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 2.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": "Common Stock, Value, Issued",
        "verboseLabel": "Common stock value"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement benefits"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r204",
      "r205",
      "r246",
      "r539",
      "r540",
      "r678"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r204",
      "r205",
      "r246",
      "r539",
      "r540",
      "r672",
      "r678"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r204",
      "r205",
      "r246",
      "r539",
      "r540",
      "r672",
      "r678"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r204",
      "r205",
      "r246",
      "r539",
      "r540"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Percentage of total"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r204",
      "r205",
      "r246",
      "r539",
      "r540",
      "r678"
     ],
     "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.",
        "label": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r138",
      "r512"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Consolidation, Policy [Policy Text Block]",
        "verboseLabel": "Basis of consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConstructionInProgressGross": {
     "auth_ref": [
      "r308"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress, Gross",
        "verboseLabel": "Construction in progress"
       }
      }
     },
     "localname": "ConstructionInProgressGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "auth_ref": [
      "r357",
      "r359",
      "r380"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 6.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 in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.",
        "label": "Contract with Customer, Asset, Net, Current",
        "terseLabel": "Contract assets",
        "verboseLabel": "Contract assets"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r357",
      "r358",
      "r380"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Liability, Current",
        "negatedLabel": "Contract liabilities",
        "verboseLabel": "Contract liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r108",
      "r143",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r541"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.",
        "label": "Cost of Revenue",
        "terseLabel": "Cost of revenue (including purchases from related parties of $437,857 in 2021 and $1,349,331 in 2020)",
        "verboseLabel": "Cost of revenue"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of revenue."
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Federal, State and Local, Tax Expense (Benefit) [Abstract]",
        "terseLabel": "Current:"
       }
      }
     },
     "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r144",
      "r475",
      "r485"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Federal Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r144",
      "r475",
      "r485",
      "r487"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r144",
      "r475",
      "r485"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r203",
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelatedIntangibleAssetsMember": {
     "auth_ref": [
      "r499"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Customer-related asset, including, but not limited to, customer lists, and noncontractual customer relationships.",
        "label": "Customer-Related Intangible Assets [Member]"
       }
      }
     },
     "localname": "CustomerRelatedIntangibleAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r502"
     ],
     "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"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction": {
     "auth_ref": [
      "r132",
      "r133",
      "r134"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of debt issuance costs that were incurred during a noncash or partial noncash transaction.",
        "label": "Debt Issuance Costs Incurred During Noncash or Partial Noncash Transaction",
        "terseLabel": "Purchase of equipment through issuance of long-term debt"
       }
      }
     },
     "localname": "DebtIssuanceCostsIncurredDuringNoncashOrPartialNoncashTransaction",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r144",
      "r476",
      "r485"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxesAndTaxCredits",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Federal, State and Local, Tax Expense (Benefit) [Abstract]",
        "terseLabel": "Deferred:"
       }
      }
     },
     "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeCurrent": {
     "auth_ref": [
      "r330"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income excluding obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred Income, Current",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "DeferredIncomeCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r127",
      "r144",
      "r476",
      "r485",
      "r486",
      "r487"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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 (Benefit)",
        "terseLabel": "Deferred income tax benefit"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r48",
      "r49",
      "r467",
      "r623",
      "r640"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "totalLabel": "Deferred Tax Liabilities, Gross",
        "verboseLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "auth_ref": [
      "r128"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.",
        "label": "Deferred Income Taxes and Tax Credits",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r144",
      "r476",
      "r485"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxesAndTaxCredits",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "terseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsCapitalLossCarryforwards": {
     "auth_ref": [
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible capital loss carryforwards.",
        "label": "Deferred Tax Assets, Capital Loss Carryforwards",
        "terseLabel": "Loss carry forward"
       }
      }
     },
     "localname": "DeferredTaxAssetsCapitalLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r469"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "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": "Deferred Tax Assets, Net of Valuation Allowance",
        "totalLabel": "Deferred Tax Assets, Net of Valuation Allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Assets, Net [Abstract]",
        "verboseLabel": "Deferred tax assets:"
       }
      }
     },
     "localname": "DeferredTaxAssetsNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign": {
     "auth_ref": [
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Foreign",
        "verboseLabel": "Operating loss carryforwards - Mexico"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsForeign",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwardsResearch": {
     "auth_ref": [
      "r472",
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible research tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards, Research",
        "verboseLabel": "Research &amp; development tax credits"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwardsResearch",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": {
     "auth_ref": [
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities",
        "terseLabel": "Accrued compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r468"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": -1.0
      }
     },
     "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 allowances"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r460",
      "r469"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "totalLabel": "Net deferred tax liability"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "terseLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred Tax Liabilities, Net [Abstract]",
        "verboseLabel": "Deferred tax liabilities:"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": {
     "auth_ref": [
      "r473",
      "r474"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Liabilities, Property, Plant and Equipment",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Defined Benefit Plan Disclosure [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlanDisclosureLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay",
        "terseLabel": "Employer Matching Contribution, Percent of Employees' Gross Pay"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage employer matches of the employee's percentage contribution matched.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match",
        "terseLabel": "Employer Matching Contribution, Percent of Match"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum amount the employee may contribute to a defined contribution plan.",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount",
        "terseLabel": "Maximum annual contribution amount"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r127",
      "r307"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r127",
      "r307"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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, Depletion and Amortization, Nonproduction",
        "verboseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortizationDiscontinuedOperations": {
     "auth_ref": [
      "r24",
      "r127"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deprecation and amortization expense attributable to property, plant and equipment and intangible assets of discontinued operations.",
        "label": "Depreciation and Amortization, Discontinued Operations",
        "terseLabel": "Depreciation and amortization of discontinued operations"
       }
      }
     },
     "localname": "DepreciationAndAmortizationDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r127",
      "r218"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r379"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "verboseLabel": "Schedule of Disaggregation of revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement [Text Block]",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-based compensation"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock": {
     "auth_ref": [
      "r423",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of share-based payment arrangement.",
        "label": "Disclosure of Share-based Compensation Arrangements by Share-based Payment Award [Table Text Block]",
        "terseLabel": "Schedule of weighted average fair value of options at the date of grant and the intrinsic value"
       }
      }
     },
     "localname": "DisclosureOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per basic share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation.",
        "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Basic Share",
        "verboseLabel": "Discontinued operations"
       }
      }
     },
     "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per diluted share amount, after tax, of income (loss) from the day-to-day business activities of the discontinued operation.",
        "label": "Discontinued Operation, Income (Loss) from Discontinued Operation, Net of Tax, Per Diluted Share",
        "verboseLabel": "Discontinued operations"
       }
      }
     },
     "localname": "DiscontinuedOperationIncomeLossFromDiscontinuedOperationNetOfTaxPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Discontinued operations."
       }
      }
     },
     "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisposalGroupClassificationAxis": {
     "auth_ref": [
      "r27"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by disposal group classification.",
        "label": "Disposal Group Classification [Axis]"
       }
      }
     },
     "localname": "DisposalGroupClassificationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisposalGroupClassificationDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations.",
        "label": "Disposal Group Classification [Domain]"
       }
      }
     },
     "localname": "DisposalGroupClassificationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r303",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 11.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Assets, Noncurrent",
        "verboseLabel": "Long-term assets of discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as cash and cash equivalents attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Cash and Cash Equivalents",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationCashAndCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization": {
     "auth_ref": [
      "r22"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of depreciation and amortization expense attributable to disposal group, including, but not limited to, discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Depreciation and Amortization",
        "verboseLabel": "Depreciation expense"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationDepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses": {
     "auth_ref": [
      "r554"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of foreign currency translation gain (loss) in the disposal group, including discontinued operation, recognized in the statement of income as a result of the sale or complete or substantially complete liquidation of an investment in a foreign entity.",
        "label": "Disposal Group, Including Discontinued Operation, Foreign Currency Translation Gains (Losses)",
        "negatedLabel": "Foreign currency transaction adjustment - discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationForeignCurrencyTranslationGainsLosses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r303",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as other assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Other Assets, Noncurrent",
        "verboseLabel": "Other assets"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r306",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as prepaid and other assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Prepaid and Other Assets, Current",
        "terseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationPrepaidAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r303",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperation",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as property, plant and equipment attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Property, Plant and Equipment, Noncurrent",
        "terseLabel": "Property, plant and equipment, net"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationPropertyPlantAndEquipmentNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal": {
     "auth_ref": [
      "r127",
      "r305",
      "r312"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of gain (loss) recognized on the sale or disposal of a disposal group. Excludes discontinued operations.",
        "label": "Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal",
        "negatedLabel": "Loss from discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupNotDiscontinuedOperationGainLossOnDisposal",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": {
     "auth_ref": [
      "r32",
      "r319"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]",
        "verboseLabel": "Discontinued operations"
       }
      }
     },
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": {
     "auth_ref": [
      "r414",
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of disposal group.",
        "label": "Disposal Group Name [Domain]"
       }
      }
     },
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DividendsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends."
       }
      }
     },
     "localname": "DividendsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsCash": {
     "auth_ref": [
      "r356",
      "r638"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.",
        "label": "Dividends, Cash",
        "negatedLabel": "Dividends declared"
       }
      }
     },
     "localname": "DividendsCash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DividendsDeclaredTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information related to dividends declared, including paid and unpaid dividends.",
        "label": "Dividends Declared [Table Text Block]",
        "terseLabel": "Schedule of dividends"
       }
      }
     },
     "localname": "DividendsDeclaredTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDividendsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DividendsPayableCurrent": {
     "auth_ref": [
      "r39",
      "r75"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 dividends declared but unpaid on equity securities issued by the entity and outstanding. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Dividends Payable, Current",
        "verboseLabel": "Dividends payable"
       }
      }
     },
     "localname": "DividendsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DividendsPayableCurrentAndNoncurrent": {
     "auth_ref": [
      "r46",
      "r47",
      "r624",
      "r644"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of dividends declared but unpaid on equity securities issued by the entity and outstanding.",
        "label": "Dividends Payable",
        "verboseLabel": "Dividends declared but not paid"
       }
      }
     },
     "localname": "DividendsPayableCurrentAndNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DividendsPreferredStock": {
     "auth_ref": [
      "r356",
      "r638"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid preferred stock dividends declared with the form of settlement in cash, stock and payment-in-kind (PIK).",
        "label": "Dividends, Preferred Stock",
        "negatedLabel": "Less: preferred stock dividends"
       }
      }
     },
     "localname": "DividendsPreferredStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DueFromAffiliateCurrent": {
     "auth_ref": [
      "r83",
      "r577",
      "r579",
      "r584"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccountsReceivableGrossCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of receivables due from an entity that is affiliated with the reporting entity by means of direct or indirect ownership, due within 1 year (or 1 business cycle).",
        "label": "Due from Affiliate, Current",
        "verboseLabel": "Receivable from OC-BVI"
       }
      }
     },
     "localname": "DueFromAffiliateCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r102",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r171",
      "r174",
      "r184",
      "r185",
      "r186",
      "r190",
      "r191",
      "r529",
      "r530",
      "r633",
      "r655"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Earnings Per Share, Basic",
        "totalLabel": "Basic earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic [Abstract]",
        "verboseLabel": "Basic earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders"
       }
      }
     },
     "localname": "EarningsPerShareBasicAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r102",
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r174",
      "r184",
      "r185",
      "r186",
      "r190",
      "r191",
      "r529",
      "r530",
      "r633",
      "r655"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Earnings Per Share, Diluted",
        "totalLabel": "Diluted earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Diluted [Abstract]",
        "verboseLabel": "Diluted earnings (loss) per common share attributable to Consolidated Water Co. Ltd. common stockholders"
       }
      }
     },
     "localname": "EarningsPerShareDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r187",
      "r188",
      "r189",
      "r192"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "verboseLabel": "Earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r462"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "totalLabel": "Effective Income Tax Rate Reconciliation, Percent"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r146",
      "r462",
      "r489"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).",
        "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent",
        "verboseLabel": "U.S. statutory federal rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r462",
      "r489"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage 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 changes in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Percent",
        "verboseLabel": "Valuation allowance for deferred tax assets"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r462",
      "r489"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": -1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage 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 applicable to statutory income tax expense (benefit) outside of the country of domicile.",
        "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Percent",
        "negatedLabel": "Nontaxable foreign income"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r462",
      "r489"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage 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 applicable to state and local income tax expense (benefit), net of federal tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent",
        "verboseLabel": "State taxes, net of federal effect"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCreditsResearch": {
     "auth_ref": [
      "r462",
      "r489"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations",
       "weight": -1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage 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 research tax credit.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Research, Percent",
        "negatedLabel": "Research &amp; Development Tax Credit"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCreditsResearch",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesReconciliationOfFederalTaxRateToEffectiveRateDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ElectricityMember": {
     "auth_ref": [
      "r382"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generation, transmission and distribution of electric energy.",
        "label": "Electricity [Member]"
       }
      }
     },
     "localname": "ElectricityMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r444"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r444"
     ],
     "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": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized, Period for Recognition"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r442"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Employee Stock Option [Member]"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r93",
      "r94",
      "r95",
      "r151",
      "r152",
      "r153",
      "r157",
      "r165",
      "r167",
      "r194",
      "r268",
      "r354",
      "r356",
      "r447",
      "r448",
      "r449",
      "r478",
      "r479",
      "r528",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r664",
      "r665",
      "r666",
      "r705"
     ],
     "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.",
        "label": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityMethodInvestmentAdditionalInformation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This serves as a place to record data that is not required by accounting literature but is useful for readers of the financial statements as it relates to the details of an equity method investment in common stock. Such information may include the amount of change for a change in ownership (equity) percentage in a given period and the amount and type of the consideration given or received in relation to the change in ownership.",
        "label": "Equity Method Investment, Additional Information"
       }
      }
     },
     "localname": "EquityMethodInvestmentAdditionalInformation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityMethodInvestmentDividendsOrDistributions": {
     "auth_ref": [
      "r100",
      "r122",
      "r127",
      "r650"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of distribution received from equity method investee for return on investment, classified as operating activities. Excludes distribution for return of investment, classified as investing activities.",
        "label": "Proceeds from Equity Method Investment, Distribution",
        "verboseLabel": "Distribution of earnings from OC-BVI"
       }
      }
     },
     "localname": "EquityMethodInvestmentDividendsOrDistributions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquityMethodInvestmentOwnershipPercentage": {
     "auth_ref": [
      "r265"
     ],
     "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": "Equity Method Investment, Ownership Percentage"
       }
      }
     },
     "localname": "EquityMethodInvestmentOwnershipPercentage",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityMethodInvestments": {
     "auth_ref": [
      "r67",
      "r224",
      "r264"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 5.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": "Equity Method Investments",
        "terseLabel": "Investment in OC-BVI"
       }
      }
     },
     "localname": "EquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "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": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r531",
      "r532",
      "r533",
      "r538"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.",
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "auth_ref": [
      "r531",
      "r532",
      "r533",
      "r536",
      "r538"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.",
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]",
        "terseLabel": "Schedule of Fair value hierarchy for assets and liabilities"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "auth_ref": [
      "r534"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class of asset.",
        "label": "Asset Class [Domain]"
       }
      }
     },
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "auth_ref": [
      "r531",
      "r538"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by class of asset.",
        "label": "Asset Class [Axis]"
       }
      }
     },
     "localname": "FairValueByAssetClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r343",
      "r345",
      "r346",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r410",
      "r532",
      "r590",
      "r591",
      "r592"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r343",
      "r345",
      "r346",
      "r391",
      "r393",
      "r398",
      "r410",
      "r532",
      "r591"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r343",
      "r345",
      "r346",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r410",
      "r532",
      "r592"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]",
        "terseLabel": "Net (liability)/asset arising from put/call options"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "auth_ref": [
      "r534",
      "r538"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "verboseLabel": "Schedule of Net liability arising from put/call options"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers, Net [Abstract]",
        "verboseLabel": "Recurring"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue": {
     "auth_ref": [
      "r534"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value",
        "terseLabel": "Net asset arising from put/call options",
        "verboseLabel": "Fair value, Assets"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue": {
     "auth_ref": [
      "r534"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value",
        "negatedLabel": "Net liability arising from put/call options",
        "verboseLabel": "Net liability arising from put/call options"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r343",
      "r345",
      "r346",
      "r391",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r410",
      "r590",
      "r591",
      "r592"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings": {
     "auth_ref": [
      "r535",
      "r537"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) recognized in income from derivative asset (liability) after deduction of derivative liability (asset), measured at fair value on recurring basis using unobservable input (level 3).",
        "label": "Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis, Unobservable Inputs Reconciliation, Gain (Loss) Included in Earnings",
        "terseLabel": "Unrealized gain"
       }
      }
     },
     "localname": "FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisUnobservableInputsReconciliationGainLossIncludedInEarnings",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs": {
     "auth_ref": [
      "r531",
      "r537"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fair value of financial instrument classified as derivative asset (liability) after deduction of derivative liability (asset), measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Net Derivative Asset (Liability) Measured on Recurring Basis with Unobservable Inputs",
        "periodEndLabel": "Balance as of December 31, 2021",
        "periodStartLabel": "Balance as of December 31, 2020"
       }
      }
     },
     "localname": "FairValueNetDerivativeAssetLiabilityMeasuredOnRecurringBasisWithUnobservableInputs",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsLevel3ActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinancialInstrumentsDisclosureTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures.",
        "label": "Financial Instruments Disclosure [Text Block]",
        "terseLabel": "Financial instruments"
       }
      }
     },
     "localname": "FinancialInstrumentsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstruments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instruments, Financial Assets, Balance Sheet Groupings [Abstract]"
       }
      }
     },
     "localname": "FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r294"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": -1.0
      }
     },
     "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": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "negatedLabel": "Finite-Lived Intangible Assets, Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after 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": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "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 Assets, Amortization Expense, Next Twelve Months",
        "verboseLabel": "2022"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "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": "Finite-Lived Intangible Assets, Amortization Expense, Year Five",
        "verboseLabel": "2026"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "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 Assets, Amortization Expense, Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r296"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "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 Assets, Amortization Expense, Year Two",
        "verboseLabel": "2023"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r287",
      "r290",
      "r294",
      "r298",
      "r602",
      "r606"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r294",
      "r606"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Gross",
        "verboseLabel": "Finite-Lived Intangible Assets, Gross"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r287",
      "r293"
     ],
     "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.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r294",
      "r602"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Finite Lived Intangible Assets Net",
        "verboseLabel": "Unamortized balance of intangible assets"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsAmortizationOfIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "auth_ref": [
      "r545",
      "r546",
      "r547",
      "r548"
     ],
     "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"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign Currency Transaction Gain (Loss), before Tax [Abstract]"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossBeforeTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r556"
     ],
     "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 Transactions and Translations Policy [Policy Text Block]",
        "verboseLabel": "Foreign currency"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Office furniture, fixtures and equipment [Member]"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets1": {
     "auth_ref": [
      "r127"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "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": "Gain (Loss) on Disposition of Assets",
        "negatedLabel": "Loss (gain) on asset dispositions and impairments, net"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnSalesOfAssetsAndAssetImpairmentCharges": {
     "auth_ref": [
      "r127"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) from the difference between the sale price or salvage price and the book value of an asset that was sold or retired, and gain (loss) from the write down of assets from their carrying value to fair value.",
        "label": "Gain (Loss) on Sale of Assets and Asset Impairment Charges",
        "terseLabel": "Gain (loss) on asset dispositions and impairments, net"
       }
      }
     },
     "localname": "GainLossOnSalesOfAssetsAndAssetImpairmentCharges",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and Administrative Expense",
        "terseLabel": "General and administrative expenses",
        "verboseLabel": "General and administrative expenses (including purchases from related parties of $77.190 in 2021 and $0 in 2020)"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesGeneralAndAdministrativeExpensesDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "auth_ref": [
      "r103"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing general and administrative expense.",
        "label": "General and administrative expense"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r279",
      "r281",
      "r587",
      "r620"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 7.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",
        "verboseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r283",
      "r291"
     ],
     "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, Policy [Policy Text Block]",
        "terseLabel": "Goodwill and intangible assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r127",
      "r280",
      "r282",
      "r284"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Impairment Loss",
        "verboseLabel": "Impairment of goodwill"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r106",
      "r143",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r541"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "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",
        "verboseLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "auth_ref": [
      "r127",
      "r304",
      "r311"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).",
        "label": "Impairment of Long-Lived Assets Held-for-use",
        "verboseLabel": "Impairment loss on long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r301",
      "r318"
     ],
     "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 or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "terseLabel": "Long-lived assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperations": {
     "auth_ref": [
      "r107",
      "r128",
      "r160",
      "r161",
      "r162",
      "r163",
      "r182",
      "r186",
      "r508"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders",
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent",
        "totalLabel": "Net income from continuing operations attributable to Consolidated Water Co. Ltd. stockholders"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity": {
     "auth_ref": [
      "r506",
      "r509"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest",
        "verboseLabel": "Income from continuing operations attributable to non-controlling interests"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r145",
      "r488"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic",
        "verboseLabel": "United States"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r99",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239",
      "r619",
      "r630",
      "r636",
      "r657"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest",
       "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 (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "netLabel": "Income before income taxes",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r145",
      "r488"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign",
        "verboseLabel": "Mexico"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r223",
      "r229",
      "r233",
      "r236",
      "r239"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.",
        "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesComponentsOfIncomeBeforeIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r143",
      "r156",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r509",
      "r530",
      "r541"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "totalLabel": "Net income from continuing operations"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": {
     "auth_ref": [
      "r96",
      "r102",
      "r156",
      "r160",
      "r161",
      "r162",
      "r163",
      "r174",
      "r184",
      "r185",
      "r530",
      "r628",
      "r631",
      "r633",
      "r651"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_EarningsPerShareBasic",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period.",
        "label": "Income (Loss) from Continuing Operations, Per Basic Share",
        "verboseLabel": "Continuing operations"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerBasicShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": {
     "auth_ref": [
      "r96",
      "r102",
      "r156",
      "r160",
      "r161",
      "r162",
      "r163",
      "r174",
      "r184",
      "r185",
      "r186",
      "r530",
      "r633",
      "r651",
      "r654",
      "r655"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_EarningsPerShareDiluted",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) derived from continuing operations during 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 (Loss) from Continuing Operations, Per Diluted Share",
        "verboseLabel": "Continuing operations"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax": {
     "auth_ref": [
      "r10",
      "r11",
      "r12",
      "r13",
      "r14",
      "r28",
      "r31",
      "r492",
      "r652"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from a discontinued operation including the portion attributable to the noncontrolling interest. Includes, but is not limited to, the income (loss) from operations during the phase-out period, gain (loss) on disposal, gain (loss) for reversal of write-down (write-down) to fair value, less cost to sell, and adjustments to a prior period gain (loss) on disposal.",
        "label": "Income (Loss) from Discontinued Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "totalLabel": "Total loss from discontinued operations",
        "verboseLabel": "Net loss from discontinued operations"
       }
      }
     },
     "localname": "IncomeLossFromDiscontinuedOperationsNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromEquityMethodInvestments": {
     "auth_ref": [
      "r100",
      "r127",
      "r220",
      "r264",
      "r629",
      "r650"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) for proportionate share of equity method investee's income (loss).",
        "label": "Income (Loss) from Equity Method Investments",
        "verboseLabel": "Equity in the earnings of OC-BVI"
       }
      }
     },
     "localname": "IncomeLossFromEquityMethodInvestments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF INCOME"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": {
     "auth_ref": [
      "r414",
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by name of disposal group.",
        "label": "Disposal Group Name [Axis]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": {
     "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": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]",
        "terseLabel": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": {
     "auth_ref": [
      "r5",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r21",
      "r26",
      "r29",
      "r30",
      "r31",
      "r316",
      "r317"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations [Table]"
       }
      }
     },
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r313",
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r146",
      "r463",
      "r465",
      "r471",
      "r483",
      "r490",
      "r493",
      "r494",
      "r495"
     ],
     "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 Tax Disclosure [Text Block]",
        "verboseLabel": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r147",
      "r166",
      "r167",
      "r221",
      "r461",
      "r484",
      "r491",
      "r658"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "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": "Income Tax Expense (Benefit)",
        "presentationGuidance": "Benefit from income taxes",
        "totalLabel": "Total provision",
        "verboseLabel": "Provision (benefit) for income taxes"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesProvisionForIncomeTaxesDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r92",
      "r458",
      "r459",
      "r465",
      "r466",
      "r470",
      "r477"
     ],
     "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 Tax, Policy [Policy Text Block]",
        "terseLabel": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r126"
     ],
     "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": "Payments in accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredRevenue": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Deferred Revenue",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 18.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "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": "Inventory"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "verboseLabel": "Change in:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingLiabilities": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities that result from activities that generate operating income.",
        "label": "Increase (Decrease) in Operating Liabilities",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 19.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants": {
     "auth_ref": [
      "r175",
      "r176",
      "r177",
      "r186"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of call options and warrants using the treasury stock method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants",
        "terseLabel": "Potential dilutive effect of unexercised options and unvested stock grants"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToCallOptionsAndWarrants",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToConversionOfPreferredStock": {
     "auth_ref": [
      "r179",
      "r180",
      "r186"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of convertible preferred stock using the if-converted method.",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Conversion of Preferred Stock",
        "verboseLabel": "Weighted average number of preferred shares outstanding during the period (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToConversionOfPreferredStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r289",
      "r297"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.",
        "label": "Indefinite-lived Intangible Assets [Axis]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassLineItems": {
     "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": "Indefinite-lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r289",
      "r297"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. 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 the company.",
        "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r300"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "Intangible Assets Disclosure [Text Block]",
        "terseLabel": "Intangible assets"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r285",
      "r292"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 8.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, Net (Excluding Goodwill)",
        "terseLabel": "Intangibles, net",
        "totalLabel": "Intangible assets, net",
        "verboseLabel": "Intangible assets, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets, Net (Excluding Goodwill) [Abstract]",
        "verboseLabel": "Cost"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwillAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InterestCostsCapitalized": {
     "auth_ref": [
      "r558"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest capitalized during the period.",
        "label": "Interest Costs Capitalized"
       }
      }
     },
     "localname": "InterestCostsCapitalized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r97",
      "r217",
      "r557",
      "r559",
      "r635"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "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",
        "negatedLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeOther": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "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, Other",
        "verboseLabel": "Interest income"
       }
      }
     },
     "localname": "InterestIncomeOther",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaidNet": {
     "auth_ref": [
      "r120",
      "r124",
      "r131"
     ],
     "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, Excluding Capitalized Interest, Operating Activities",
        "verboseLabel": "Interest paid in cash"
       }
      }
     },
     "localname": "InterestPaidNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryCurrentTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about inventory expected to be sold or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Current [Table]"
       }
      }
     },
     "localname": "InventoryCurrentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r278"
     ],
     "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": "Inventory Disclosure [Text Block]",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventory"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryGross": {
     "auth_ref": [
      "r86"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross 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": "Inventory, Gross",
        "terseLabel": "Total inventory"
       }
      }
     },
     "localname": "InventoryGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryLineItems": {
     "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": "Inventory [Line Items]"
       }
      }
     },
     "localname": "InventoryLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r34",
      "r86",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "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": "Inventory, Net",
        "terseLabel": "Less current portion",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNoncurrent": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle.",
        "label": "Inventory, Noncurrent",
        "terseLabel": "Inventory (non-current)",
        "verboseLabel": "Inventory, noncurrent"
       }
      }
     },
     "localname": "InventoryNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r40",
      "r87",
      "r139",
      "r193",
      "r276",
      "r277",
      "r278",
      "r600"
     ],
     "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": "Inventory, Policy [Policy Text Block]",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InvestmentPolicyTextBlock": {
     "auth_ref": [
      "r266",
      "r656"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for investment in financial asset.",
        "label": "Investment, Policy [Policy Text Block]",
        "terseLabel": "Investments"
       }
      }
     },
     "localname": "InvestmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InvestmentsAllOtherInvestmentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial instruments"
       }
      }
     },
     "localname": "InvestmentsAllOtherInvestmentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LandMember": {
     "auth_ref": [
      "r382"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Part of earth's surface not covered by water.",
        "label": "Land [Member]"
       }
      }
     },
     "localname": "LandMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r569",
      "r571"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease costs"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r569"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Schedule of Lease, Cost [Table Text Block]",
        "terseLabel": "Schedule of Lease, Cost"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r308"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r570"
     ],
     "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": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Schedule of future lease payments relating to the Company's operating lease liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "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, Payments, Due",
        "totalLabel": "Total future lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "order": 5.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 due after 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": "Lessee, Operating Lease, Liability, Payments, Due after Year Five",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "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 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": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months",
        "terseLabel": "2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "order": 6.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 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": "Lessee, Operating Lease, Liability, Payments, Due Year Five",
        "terseLabel": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four",
        "terseLabel": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "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": "Lessee, Operating Lease, Liability, Payments, Due Year Three",
        "terseLabel": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r570"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails": {
       "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 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": "Lessee, Operating Lease, Liability, Payments, Due Year Two",
        "terseLabel": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r570"
     ],
     "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": "Less: imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r572"
     ],
     "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": "Lessee, Operating Leases [Text Block]",
        "verboseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r74",
      "r143",
      "r231",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r511",
      "r516",
      "r517",
      "r541",
      "r585",
      "r586"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities [Abstract]",
        "verboseLabel": "LIABILITIES"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r58",
      "r143",
      "r267",
      "r541",
      "r587",
      "r626",
      "r647"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "verboseLabel": "LIABILITIES AND EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r76",
      "r143",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r511",
      "r516",
      "r517",
      "r541",
      "r585",
      "r586",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities",
        "verboseLabel": "Current"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent [Abstract]",
        "verboseLabel": "Noncurrent"
       }
      }
     },
     "localname": "LiabilitiesNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r314"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of.",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities",
        "verboseLabel": "Total liabilities of discontinued operations"
       }
      }
     },
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r306",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 9.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current",
        "verboseLabel": "Current liabilities of discontinued operations"
       }
      }
     },
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r25",
      "r27",
      "r31",
      "r303",
      "r314"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 4.0,
       "parentTag": "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of beyond one year or the normal operating cycle, if longer.",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities, Noncurrent",
        "terseLabel": "Long-term liabilities of discontinued operations",
        "verboseLabel": "Noncurrent liabilities of discontinued operations"
       }
      }
     },
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LitigationSettlementExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of litigation expense, including but not limited to legal, forensic, accounting, and investigative fees.",
        "label": "Litigation Settlement, Expense"
       }
      }
     },
     "localname": "LitigationSettlementExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": {
     "auth_ref": [
      "r260"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.",
        "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]",
        "terseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNet"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": {
     "auth_ref": [
      "r244"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets.",
        "label": "Long-lived Assets by Geographic Areas [Table Text Block]",
        "terseLabel": "Schedule of long-lived assets by geographic areas"
       }
      }
     },
     "localname": "LongLivedAssetsByGeographicAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 8.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": "Long-term Debt, Current Maturities",
        "terseLabel": "Current portion of long-term debt"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r77"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt, Excluding Current Maturities",
        "terseLabel": "Long-term debt, noncurrent"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment.",
        "label": "Long-term Purchase Commitment, Amount"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LossContingencyDamagesSoughtValue": {
     "auth_ref": [
      "r326",
      "r327",
      "r328"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The value (monetary amount) of the award the plaintiff seeks in the legal matter.",
        "label": "Loss Contingency, Damages Sought, Value"
       }
      }
     },
     "localname": "LossContingencyDamagesSoughtValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MaintenanceMember": {
     "auth_ref": [
      "r382"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Process of preserving asset, including, but not limited to, building, machinery and software.",
        "label": "Maintenance [Member]"
       }
      }
     },
     "localname": "MaintenanceMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MinorityInterest": {
     "auth_ref": [
      "r85",
      "r143",
      "r267",
      "r331",
      "r335",
      "r336",
      "r337",
      "r340",
      "r341",
      "r541",
      "r625",
      "r646"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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": "Stockholders' Equity Attributable to Noncontrolling Interest",
        "verboseLabel": "Non-controlling interests"
       }
      }
     },
     "localname": "MinorityInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByNoncontrollingOwners": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The equity interest of noncontrolling shareholders, partners or other equity holders in consolidated entity.",
        "label": "Noncontrolling Interest, Ownership Percentage by Noncontrolling Owners"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByNoncontrollingOwners",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_MinorityInterestOwnershipPercentageByParent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage.",
        "label": "Noncontrolling Interest, Ownership Percentage by Parent",
        "verboseLabel": "Ownership interest held"
       }
      }
     },
     "localname": "MinorityInterestOwnershipPercentageByParent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r198",
      "r209"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.",
        "label": "Nature of Operations [Text Block]",
        "terseLabel": "Principal activity"
       }
      }
     },
     "localname": "NatureOfOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePrincipalActivity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r123"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "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": "Net cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "verboseLabel": "Cash flows from financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r123"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "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": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "verboseLabel": "Cash flows from investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r123",
      "r125",
      "r128"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect",
       "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": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Cash flows from operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations": {
     "auth_ref": [
      "r123",
      "r125",
      "r128"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, excluding 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, Continuing Operations",
        "totalLabel": "Net cash provided by operating activities - continuing operations"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r31",
      "r90",
      "r91",
      "r95",
      "r101",
      "r128",
      "r143",
      "r156",
      "r160",
      "r161",
      "r162",
      "r163",
      "r166",
      "r167",
      "r182",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r530",
      "r541",
      "r632",
      "r653"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "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 (Loss) Attributable to Parent",
        "totalLabel": "Net income attributable to Consolidated Water Co. Ltd. stockholders",
        "verboseLabel": "Net income attributable to Consolidated Water Co. Ltd. stockholders"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r90",
      "r91",
      "r95",
      "r166",
      "r167",
      "r514",
      "r519"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2": {
       "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": "Net Income (Loss) Attributable to Noncontrolling Interest",
        "terseLabel": "Income from continuing operations attributable to non-controlling interests"
       }
      }
     },
     "localname": "NetIncomeLossAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": {
     "auth_ref": [
      "r160",
      "r161",
      "r162",
      "r163",
      "r171",
      "r172",
      "r183",
      "r186",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.",
        "label": "Net Income (Loss) Available to Common Stockholders, Basic",
        "totalLabel": "Net income (loss) available to common shares in the determination of basic earnings per common share"
       }
      }
     },
     "localname": "NetIncomeLossAvailableToCommonStockholdersBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic": {
     "auth_ref": [
      "r172",
      "r186"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) from continuing operations available to common shareholders.",
        "label": "Net Income (Loss) from Continuing Operations Available to Common Shareholders, Basic",
        "verboseLabel": "Net income from continuing operations available to common shares in the determination of basic earnings per common share"
       }
      }
     },
     "localname": "NetIncomeLossFromContinuingOperationsAvailableToCommonShareholdersBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Impact of recent accounting standards"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r2",
      "r154",
      "r155",
      "r158",
      "r159",
      "r168",
      "r169",
      "r170",
      "r262",
      "r263",
      "r269",
      "r270",
      "r385",
      "r386",
      "r387",
      "r388",
      "r450",
      "r480",
      "r481",
      "r482",
      "r527",
      "r542",
      "r543",
      "r544",
      "r573",
      "r603",
      "r604",
      "r605",
      "r667",
      "r668",
      "r669",
      "r670",
      "r671",
      "r706"
     ],
     "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": "New Accounting Pronouncements and Changes in Accounting Principles [Text Block]",
        "verboseLabel": "Impact of recent accounting standards"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureImpactOfRecentAccountingStandards"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash Investing and Financing Items [Abstract]",
        "terseLabel": "Non-cash transactions:",
        "verboseLabel": "Non-cash transactions:"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r501"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Non-compete agreements",
        "verboseLabel": "Non-compete agreement"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncontrollingInterestMember": {
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r356",
      "r506"
     ],
     "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": "Non controlling interests [Member]"
       }
      }
     },
     "localname": "NoncontrollingInterestMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r111"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "Nonoperating Income (Expense)",
        "terseLabel": "Other income, net",
        "totalLabel": "Other income, net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense) [Abstract]",
        "verboseLabel": "Other income (expense):"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NumberOfReportableSegments": {
     "auth_ref": [
      "r211"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.",
        "label": "Number of Reportable Segments"
       }
      }
     },
     "localname": "NumberOfReportableSegments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_NumberOfReportingUnits": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.",
        "label": "Number of Reporting Units",
        "terseLabel": "Number of reporting units"
       }
      }
     },
     "localname": "NumberOfReportingUnits",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r223",
      "r229",
      "r233",
      "r236",
      "r239"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "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": "Income from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r563",
      "r571"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "verboseLabel": "Operating lease costs"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r561"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 1.0,
       "parentTag": "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 5.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": "Operating Lease, Liability, Current",
        "negatedLabel": "Less: current obligations",
        "terseLabel": "Current maturities of operating leases",
        "verboseLabel": "Current maturities of operating leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r561"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 3.0,
       "parentTag": "cwco_OperatingLeaseLiabilityIncludingDiscontinuedOperations",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Noncurrent lease obligations",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Noncurrent operating leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesFutureLeasePaymentsDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r562",
      "r565"
     ],
     "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",
        "verboseLabel": "Operating cash outflows for operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r560"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetailss": {
       "order": 3.0,
       "parentTag": "cwco_OperatingLeaseRightOfUseAssetNet",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 9.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": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r568",
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "verboseLabel": "Operating leases, weighted average discount rate"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r567",
      "r571"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "verboseLabel": "Operating leases, weighted average remaining lease term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r472"
     ],
     "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"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OptionIndexedToIssuersEquityTypeAxis": {
     "auth_ref": [
      "r347",
      "r524",
      "r525",
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of freestanding contracts issued by an entity that are indexed to, and potentially settled in, an entity's own stock.",
        "label": "Option Indexed to Issuer's Equity, Type [Axis]"
       }
      }
     },
     "localname": "OptionIndexedToIssuersEquityTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OptionIndexedToIssuersEquityTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of the type of freestanding contract issued by a Company that is indexed to, and potentially settled in, a Company's own stock. Specifically, the pertinent rights and privileges of the securities outstanding.",
        "label": "Option Indexed to Issuer's Equity, Type [Domain]"
       }
      }
     },
     "localname": "OptionIndexedToIssuersEquityTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Principal activity"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAmortizationOfDeferredCharges": {
     "auth_ref": [
      "r109",
      "r127"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization of other deferred costs recognized in the income statement.",
        "label": "Amortization of Other Deferred Charges"
       }
      }
     },
     "localname": "OtherAmortizationOfDeferredCharges",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssets": {
     "auth_ref": [
      "r45",
      "r621",
      "r642"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of assets classified as other.",
        "label": "Other Assets"
       }
      }
     },
     "localname": "OtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 10.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "verboseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherExpenseMember": {
     "auth_ref": [
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other expense.",
        "label": "Other [Member]"
       }
      }
     },
     "localname": "OtherExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCostOfRevenuesAndGeneralAndAdministrativeExpensesCostOfRevenuesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "verboseLabel": "Other liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r112"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 6.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "verboseLabel": "Other"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "auth_ref": [
      "r117"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.",
        "label": "Payments of Ordinary Dividends, Common Stock",
        "negatedLabel": "Dividends paid to common shareholders"
       }
      }
     },
     "localname": "PaymentsOfDividendsCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividendsPreferredStockAndPreferenceStock": {
     "auth_ref": [
      "r117"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow in the form of ordinary dividends to preferred shareholders of the parent entity.",
        "label": "Payments of Ordinary Dividends, Preferred Stock and Preference Stock",
        "negatedLabel": "Dividends paid to preferred shareholders"
       }
      }
     },
     "localname": "PaymentsOfDividendsPreferredStockAndPreferenceStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireAdditionalInterestInSubsidiaries": {
     "auth_ref": [
      "r114"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the purchase of noncontrolling interest during the period.",
        "label": "Payments to Acquire Additional Interest in Subsidiaries",
        "negatedLabel": "Purchase of non-controlling interest in PERC"
       }
      }
     },
     "localname": "PaymentsToAcquireAdditionalInterestInSubsidiaries",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 2.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": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Additions to property, plant and equipment and construction in progress"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToMinorityShareholders": {
     "auth_ref": [
      "r119"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.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": "Payments to Noncontrolling Interests",
        "negatedLabel": "Dividends paid to non-controlling interests"
       }
      }
     },
     "localname": "PaymentsToMinorityShareholders",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r390",
      "r392",
      "r398",
      "r399",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r410",
      "r411",
      "r412",
      "r413",
      "r418"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for retirement benefits.",
        "label": "Pension and Other Postretirement Benefits Disclosure [Text Block]",
        "terseLabel": "Retirement benefits"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefits"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PensionExpense": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost (reversal of cost) for pension benefits. Excludes other postretirement benefits.",
        "label": "Pension Cost (Reversal of Cost)",
        "terseLabel": "Pension Expense"
       }
      }
     },
     "localname": "PensionExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company.",
        "label": "Preferred stock [Member]"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r51",
      "r349"
     ],
     "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 or Stated Value Per Share",
        "verboseLabel": "Redeemable preferred stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r51"
     ],
     "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",
        "verboseLabel": "Redeemable preferred stock, authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r51",
      "r349"
     ],
     "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",
        "verboseLabel": "Redeemable preferred stock, issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r51"
     ],
     "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",
        "verboseLabel": "Redeemable preferred stock, outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r51",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Redeemable preferred stock, $0.60 par value. Authorized 200,000 shares; issued and outstanding 28,635 and 31,068 shares, respectively",
        "verboseLabel": "Preferred stock value"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r36",
      "r64",
      "r65"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "verboseLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpensesAndOtherCurrentAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing prepaid expenses and other current assets.",
        "label": "Prepaid Expenses and Other Current Assets [Member]"
       }
      }
     },
     "localname": "PrepaidExpensesAndOtherCurrentAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassification, Policy [Policy Text Block]",
        "terseLabel": "Comparative amounts"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProceedsFromRepurchaseOfRedeemablePreferredStock": {
     "auth_ref": [],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Repurchase of redeemable preferred stock",
        "documentation": "Cash inflows (outflows) from issuing and redeeming redeemable preferred stock; includes convertible and nonconvertible redeemable preferred stock.",
        "label": "Proceeds from (Repurchase of) Redeemable Preferred Stock"
       }
      }
     },
     "localname": "ProceedsFromRepurchaseOfRedeemablePreferredStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "auth_ref": [
      "r113"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.",
        "label": "Proceeds from Sale of Property, Plant, and Equipment",
        "terseLabel": "Proceeds from asset dispositions"
       }
      }
     },
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "auth_ref": [
      "r116",
      "r446"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.",
        "label": "Proceeds from Stock Options Exercised",
        "verboseLabel": "Proceeds received from exercise of stock options"
       }
      }
     },
     "localname": "ProceedsFromStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r31",
      "r90",
      "r91",
      "r95",
      "r121",
      "r143",
      "r156",
      "r166",
      "r167",
      "r223",
      "r229",
      "r233",
      "r236",
      "r239",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r509",
      "r513",
      "r515",
      "r519",
      "r520",
      "r530",
      "r541",
      "r636"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "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 (Loss), Including Portion Attributable to Noncontrolling Interest",
        "presentationGuidance": "Net income",
        "totalLabel": "Net Income"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, plant and equipment and construction in progress"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r70",
      "r310"
     ],
     "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": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r319",
      "r680",
      "r681",
      "r682"
     ],
     "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 and Equipment Disclosure [Text Block]",
        "terseLabel": "Property, plant and equipment and construction in progress"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgress"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentEstimatedUsefulLives": {
     "auth_ref": [
      "r302"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the periods of time over which an entity anticipates to receive utility from its property, plant and equipment (that is, the periods of time over which an entity allocates the initial cost of its property, plant and equipment).",
        "label": "Property, Plant and Equipment, Estimated Useful Lives"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentEstimatedUsefulLives",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r69",
      "r308"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "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": "Property, Plant and Equipment, Gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r43",
      "r44",
      "r310",
      "r587",
      "r637",
      "r648"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Property, plant and equipment, net",
        "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, Plant and Equipment, Net",
        "terseLabel": "Property, Plant and Equipment, Net",
        "totalLabel": "Property, Plant and Equipment, Net, Total",
        "verboseLabel": "Property, plant and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r68",
      "r310",
      "r680",
      "r681"
     ],
     "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, Plant and Equipment, Policy [Policy Text Block]",
        "terseLabel": "Property, plant and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r43",
      "r310"
     ],
     "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": "Property, Plant and Equipment [Table Text Block]",
        "terseLabel": "Schedule of Property, plant and equipment and construction in progress"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r43",
      "r308"
     ],
     "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.",
        "label": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r104",
      "r272"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Provision for Doubtful Accounts",
        "verboseLabel": "Provision for doubtful accounts"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetAllowanceForDoubtfulAccountsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProvisionForLoanAndLeaseLosses": {
     "auth_ref": [
      "r126",
      "r253",
      "r634"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense related to estimated loss from loan and lease transactions.",
        "label": "Provision for Loan and Lease Losses",
        "terseLabel": "Provision for doubtful accounts"
       }
      }
     },
     "localname": "ProvisionForLoanAndLeaseLosses",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ReceivablesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable, net."
       }
      }
     },
     "localname": "ReceivablesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RedeemablePreferredStockMember": {
     "auth_ref": [
      "r41",
      "r143",
      "r267",
      "r331",
      "r335",
      "r336",
      "r337",
      "r340",
      "r341",
      "r348",
      "r541"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of type or class of redeemable preferred stock. For instance, cumulative preferred stock, noncumulative preferred stock, convertible or series.",
        "label": "Redeemable preferred stock [Member]"
       }
      }
     },
     "localname": "RedeemablePreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyDomain": {
     "auth_ref": [
      "r400",
      "r576",
      "r577"
     ],
     "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.",
        "label": "Related Party [Domain]"
       }
      }
     },
     "localname": "RelatedPartyDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty": {
     "auth_ref": [
      "r576"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.",
        "label": "Related Party Transaction, Expenses from Transactions with Related Party",
        "terseLabel": "Amount of expense related to sublease agreement"
       }
      }
     },
     "localname": "RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyTransactionLineItems": {
     "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": "Related Party Transaction [Line Items]"
       }
      }
     },
     "localname": "RelatedPartyTransactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionPurchasesFromRelatedParty": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchases during the period (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.",
        "label": "Related Party Transaction, Purchases from Related Party",
        "terseLabel": "Purchases of services",
        "verboseLabel": "Purchases from related parties"
       }
      }
     },
     "localname": "RelatedPartyTransactionPurchasesFromRelatedParty",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RelatedPartyTransactionsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related party transactions"
       }
      }
     },
     "localname": "RelatedPartyTransactionsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "auth_ref": [
      "r400",
      "r576",
      "r580",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614",
      "r615",
      "r616",
      "r617",
      "r618"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.",
        "label": "Related Party [Axis]"
       }
      }
     },
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": {
     "auth_ref": [
      "r574",
      "r575",
      "r577",
      "r581",
      "r582"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Related Party Transactions Disclosure [Text Block]",
        "terseLabel": "Related party transactions"
       }
      }
     },
     "localname": "RelatedPartyTransactionsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactions"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r118"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 5.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": "Principal repayments on long-term debt"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash and Cash Equivalents [Domain]"
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r55",
      "r356",
      "r451",
      "r587",
      "r645",
      "r667",
      "r671"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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": "Retained Earnings (Accumulated Deficit)",
        "verboseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r151",
      "r152",
      "r153",
      "r157",
      "r165",
      "r167",
      "r268",
      "r447",
      "r448",
      "r449",
      "r478",
      "r479",
      "r528",
      "r664",
      "r666"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contracts in progress"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r214",
      "r215",
      "r228",
      "r234",
      "r235",
      "r241",
      "r242",
      "r246",
      "r378",
      "r379",
      "r601"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails": {
       "order": 3.0,
       "parentTag": "cwco_ContractWithCustomerNetOverbillings",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "verboseLabel": "Revenues recognized to date on contracts in process"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r140",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "terseLabel": "Contract assets and liabilities"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r368",
      "r369",
      "r381",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Contracts in progress"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgress"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r140",
      "r141"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue Recognition, Policy [Policy Text Block]",
        "verboseLabel": "Revenue recognition"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r366"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Revenue remaining performance obligation, Amount",
        "verboseLabel": "Unsatisfied or partially unsatisfied performance obligations for contracts in progress"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r367"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureContractsInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r98",
      "r143",
      "r214",
      "r215",
      "r228",
      "r234",
      "r235",
      "r241",
      "r242",
      "r246",
      "r267",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r541",
      "r636"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "definitionGuidance": "Total Revenue",
        "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",
        "terseLabel": "Revenue",
        "verboseLabel": "Revenue"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r566",
      "r571"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "verboseLabel": "Right-of-use assets obtained in exchange for new operating lease liabilities"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSupplementalDisclosureOfCashFlowInformationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r204",
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r84"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.",
        "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]",
        "terseLabel": "Schedule of Accounts receivable"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountsReceivableNetTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCashAndCashEquivalentsTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances.",
        "label": "Schedule of Cash and Cash Equivalents [Table]"
       }
      }
     },
     "localname": "ScheduleOfCashAndCashEquivalentsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfCashAndCashEquivalentsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of cash and cash equivalents.",
        "label": "Schedule of Cash and Cash Equivalents [Table Text Block]",
        "terseLabel": "Schedule of Cash and cash equivalents"
       }
      }
     },
     "localname": "ScheduleOfCashAndCashEquivalentsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureCashAndCashEquivalentsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented.",
        "label": "Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]",
        "terseLabel": "Schedule of Cash Flow, Supplemental"
       }
      }
     },
     "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r477"
     ],
     "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 Components of Income Tax Expense (Benefit) [Table Text Block]",
        "verboseLabel": "Schedule of provision for income taxes deferred tax benefit relating to U.S. operations"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r469"
     ],
     "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 and Liabilities [Table Text Block]",
        "verboseLabel": "Schedule of tax effects of significant items net long-term deferred tax assets liability"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r406",
      "r407",
      "r408",
      "r409",
      "r410"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans.  Also includes schedule for fair value of plan assets by major categories of plan assets by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRetirementBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": {
     "auth_ref": [
      "r5",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r21",
      "r26",
      "r29",
      "r30",
      "r31",
      "r316",
      "r317"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]",
        "verboseLabel": "Schedule of financial information for Mexico project development"
       }
      }
     },
     "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r186"
     ],
     "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 Earnings Per Share, Basic and Diluted [Table Text Block]",
        "verboseLabel": "Schedule of computation of basic and diluted EPS"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r462"
     ],
     "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 Effective Income Tax Rate Reconciliation [Table Text Block]",
        "verboseLabel": "Schedule of reconciliation of federal tax rate to the effective rate"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r287",
      "r293"
     ],
     "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 Finite-Lived Intangible Assets [Table Text Block]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r144"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]",
        "verboseLabel": "Schedule of components of income before income taxes"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r297",
      "r299"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance and exist in perpetuity.",
        "label": "Schedule of Indefinite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfIndefiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsCostsAndAccumulatedAmortizationDetails",
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfInventoryNoncurrentTableTextBlock": {
     "auth_ref": [
      "r40",
      "r60",
      "r61",
      "r62",
      "r63"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of inventories not expected to be converted to cash, sold or exchanged within the normal operating cycle including inventoried costs relating to long-term contracts or programs.",
        "label": "Schedule of Inventory, Noncurrent [Table Text Block]",
        "terseLabel": "Schedule of Inventory"
       }
      }
     },
     "localname": "ScheduleOfInventoryNoncurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureInventoryTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInvestmentsLineItems": {
     "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 Investments [Line Items]"
       }
      }
     },
     "localname": "ScheduleOfInvestmentsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfInvestmentsTable": {
     "auth_ref": [
      "r675"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A container table for all schedule of investment items. It ties in the \"Legal Entity [Axis]\" to all of its contained line items.",
        "label": "Schedule of Investments [Table]"
       }
      }
     },
     "localname": "ScheduleOfInvestmentsTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r70",
      "r310"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": {
     "auth_ref": [
      "r578",
      "r580"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.",
        "label": "Schedule of Related Party Transactions, by Related Party [Table]"
       }
      }
     },
     "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureRelatedPartyTransactionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock": {
     "auth_ref": [
      "r105",
      "r242"
     ],
     "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 from external customers attributed to Foreign Countries by Geographic Area [Table Text Block]",
        "terseLabel": "Schedule of revenues earned by major geographic region"
       }
      }
     },
     "localname": "ScheduleOfRevenueFromExternalCustomersAttributedToForeignCountriesByGeographicAreaTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "auth_ref": [
      "r223",
      "r226",
      "r232",
      "r283"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "auth_ref": [
      "r223",
      "r226",
      "r232",
      "r283"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "verboseLabel": "Schedule of segment reporting information, by segment"
       }
      }
     },
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r423",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r426",
      "r431",
      "r434"
     ],
     "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": "Share-based Compensation, Stock Options, Activity [Table Text Block]",
        "terseLabel": "Schedule of company's stock option activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r437"
     ],
     "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 Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "terseLabel": "Schedule of significant weighted average assumptions"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r293"
     ],
     "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 Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentDiscontinuedOperationsMember": {
     "auth_ref": [
      "r6",
      "r7",
      "r8",
      "r9"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Component or group of components disposed of or classified as held-for-sale and representing a strategic shift that has or will have a major effect on operations and financial results. Includes a business or nonprofit activity on acquisition classified as held-for-sale.",
        "label": "Discontinued Operations"
       }
      }
     },
     "localname": "SegmentDiscontinuedOperationsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsFinancialInformationDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentDetails",
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentDomain": {
     "auth_ref": [
      "r210",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r228",
      "r229",
      "r230",
      "r231",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r239",
      "r246",
      "r321",
      "r322",
      "r659"
     ],
     "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.",
        "label": "Segments [Domain]"
       }
      }
     },
     "localname": "SegmentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment information"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r210",
      "r212",
      "r213",
      "r223",
      "r227",
      "r233",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r245",
      "r246",
      "r247"
     ],
     "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": "Segment Reporting Disclosure [Text Block]",
        "verboseLabel": "Segment information"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "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": "Segment Reporting Information [Line Items]"
       }
      }
     },
     "localname": "SegmentReportingInformationLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationPropertyPlantAndEquipmentNetByMajorGeographicRegionDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationRevenuesEarnedByMajorGeographicRegionAndMajorCustomerDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 20.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Compensation",
        "verboseLabel": "Compensation expense relating to stock and stock option grants"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r424"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r440"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "verboseLabel": "Expected dividend yield"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r439"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate",
        "verboseLabel": "Expected volatility"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r441"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate",
        "terseLabel": "Risk free interest rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r433"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": {
     "auth_ref": [
      "r430"
     ],
     "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": "Forfeited/expired - Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [
      "r430"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price of options that were either forfeited or expired.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price",
        "terseLabel": "Forfeited/expired-Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Number of stock grant rights issued",
        "verboseLabel": "Granted - Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r432"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r428",
      "r445"
     ],
     "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": "Outstanding at the ending of period -Options",
        "periodStartLabel": "Outstanding at the beginning of period -Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r427"
     ],
     "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": "Outstanding-Weighted Average Exercise Price at the ending of period - Options",
        "periodStartLabel": "Outstanding-Weighted Average Exercise Price at the beginning of period - Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r421",
      "r425"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Equity Award [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Exercised-Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted-Weighted Average Exercise Price"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": {
     "auth_ref": [
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by range of option prices pertaining to options granted.",
        "label": "Exercise Price Range [Axis]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": {
     "auth_ref": [
      "r442"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Price of a single share of a number of saleable stocks of a company.",
        "label": "Share Price"
       }
      }
     },
     "localname": "SharePrice",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r438",
      "r452"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term",
        "verboseLabel": "Expected option life (years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationSignificantWeightedAverageAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of non-vested options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average grant-date fair value of non-vested options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Option, Nonvested, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r435"
     ],
     "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": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "verboseLabel": "Outstanding-Weighted Average Remaining Contractual Life (Years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails"
     ],
     "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 (in shares)",
        "periodStartLabel": "Balance (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r564",
      "r571"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-term Lease, Cost",
        "verboseLabel": "Short-term lease costs"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureLeasesComponentsOfLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r137",
      "r150"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "verboseLabel": "Accounting policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "auth_ref": [
      "r15",
      "r210",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r228",
      "r229",
      "r230",
      "r231",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r239",
      "r246",
      "r283",
      "r315",
      "r321",
      "r322",
      "r659"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by business segments.",
        "label": "Segments [Axis]"
       }
      }
     },
     "localname": "StatementBusinessSegmentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureSegmentInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r50",
      "r51",
      "r52",
      "r142",
      "r143",
      "r174",
      "r178",
      "r181",
      "r184",
      "r186",
      "r195",
      "r196",
      "r197",
      "r267",
      "r331",
      "r335",
      "r336",
      "r337",
      "r340",
      "r341",
      "r349",
      "r350",
      "r352",
      "r353",
      "r354",
      "r541",
      "r702"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureDiscontinuedOperationsMexicoProjectDevelopmentNarrativesDetails",
      "http://www.cwco.com/role/DisclosureInventoryDetails",
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r82",
      "r93",
      "r94",
      "r95",
      "r151",
      "r152",
      "r153",
      "r157",
      "r165",
      "r167",
      "r194",
      "r268",
      "r354",
      "r356",
      "r447",
      "r448",
      "r449",
      "r478",
      "r479",
      "r528",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r664",
      "r665",
      "r666",
      "r705"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationWeightedAverageFairValueOfOptionsAtDateOfGrantAndIntrinsicValueOfOptionsExercisedDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED BALANCE SHEETS"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r151",
      "r152",
      "r153",
      "r194",
      "r601"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesCashAndCashEquivalentsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesDisaggregatedRevenueDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesGoodwillAndIntangibleAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesInvestmentsAndOtherAssetsDetails",
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesAdditionalInformationDetails",
      "http://www.cwco.com/role/DisclosureIncomeTaxesNetLongTermDeferredTaxLiabilityDetails",
      "http://www.cwco.com/role/DisclosureLeasesLeaseAssetsAndLiabilitiesDetails",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheetsParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncomeParenthetical",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockGrantedDuringPeriodValueSharebasedCompensation": {
     "auth_ref": [
      "r419",
      "r456"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, after forfeiture, of shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Granted, Value, Share-based Payment Arrangement, after Forfeiture",
        "terseLabel": "Number of vested shares issued"
       }
      }
     },
     "localname": "StockGrantedDuringPeriodValueSharebasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r81",
      "r344",
      "r354",
      "r355",
      "r356"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.",
        "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities",
        "terseLabel": "Conversion of preferred stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders.",
        "label": "Stock Issued During Period, Shares, Issued for Services"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesIssuedForServices",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r51",
      "r52",
      "r354",
      "r356"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "verboseLabel": "Issuance of share capital (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r51",
      "r52",
      "r354",
      "r356",
      "r429"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Exercised - Options",
        "verboseLabel": "Exercise of options (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureStockBasedCompensationStockOptionActivityDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r82",
      "r354",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities.",
        "label": "Stock Issued During Period, Value, Conversion of Convertible Securities",
        "terseLabel": "Conversion of preferred stock"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r51",
      "r52",
      "r354",
      "r356"
     ],
     "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": "Stock Issued During Period, Value, New Issues",
        "verboseLabel": "Issuance of share capital"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r82",
      "r354",
      "r356"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "verboseLabel": "Exercise of options"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRedeemedOrCalledDuringPeriodShares": {
     "auth_ref": [
      "r354"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of stock bought back by the entity at the exercise price or redemption price.",
        "label": "Stock Redeemed or Called During Period, Shares",
        "negatedLabel": "Buyback of preferred stock (in shares)"
       }
      }
     },
     "localname": "StockRedeemedOrCalledDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRedeemedOrCalledDuringPeriodValue": {
     "auth_ref": [
      "r354"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of stock bought back by the entity at the exercise price or redemption price.",
        "label": "Stock Redeemed or Called During Period, Value",
        "negatedLabel": "Buyback of preferred stock"
       }
      }
     },
     "localname": "StockRedeemedOrCalledDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r52",
      "r56",
      "r57",
      "r143",
      "r259",
      "r267",
      "r541",
      "r587"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 Consolidated Water Co. Ltd. stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "verboseLabel": "Consolidated Water Co. Ltd. stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r1",
      "r94",
      "r143",
      "r151",
      "r152",
      "r153",
      "r157",
      "r165",
      "r267",
      "r268",
      "r356",
      "r447",
      "r448",
      "r449",
      "r478",
      "r479",
      "r506",
      "r507",
      "r518",
      "r528",
      "r541",
      "r550",
      "r551",
      "r555",
      "r665",
      "r666",
      "r705"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets": {
       "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 equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterestAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent events"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r588",
      "r589"
     ],
     "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 [Text Block]",
        "verboseLabel": "Subsequent events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureSubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowElementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowElementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "auth_ref": [
      "r251",
      "r252",
      "r255",
      "r256",
      "r258",
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for accounts receivable.",
        "label": "Trade and Other Accounts Receivable, Policy [Policy Text Block]",
        "terseLabel": "Accounts receivable and allowance for doubtful accounts"
       }
      }
     },
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade name"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrealizedGainLossOnDerivatives": {
     "auth_ref": [
      "r127"
     ],
     "calculation": {
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperations",
       "weight": -1.0
      },
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period.",
        "label": "Unrealized Gain (Loss) on Derivatives",
        "negatedLabel": "Unrealized (gain) loss on net put/call option",
        "verboseLabel": "Net unrealized gain (loss) on put/call options"
       }
      }
     },
     "localname": "UnrealizedGainLossOnDerivatives",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfCashFlows",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r199",
      "r200",
      "r201",
      "r202",
      "r206",
      "r207",
      "r208"
     ],
     "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, Policy [Policy Text Block]",
        "terseLabel": "Use of estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VehiclesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used primarily for road transportation.",
        "label": "Vehicles [Member]"
       }
      }
     },
     "localname": "VehiclesMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureAccountingPoliciesPropertyPlantAndEquipmentDetails",
      "http://www.cwco.com/role/DisclosurePropertyPlantAndEquipmentAndConstructionInProgressDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r173",
      "r186"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "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 Shares Outstanding, Diluted",
        "totalLabel": "Weighted average number of shares used for determining diluted earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders",
        "verboseLabel": "Diluted earnings per share"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "verboseLabel": "Weighted average number of common shares used in the determination of:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r171",
      "r186"
     ],
     "calculation": {
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "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 Shares Outstanding, Basic",
        "terseLabel": "Weighted average number of common shares in the determination of basic earnings per common share attributable to Consolidated Water Co. Ltd. common stockholders (in shares)",
        "verboseLabel": "Basic earnings per share"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.cwco.com/role/DisclosureEarningsPerShareDetails",
      "http://www.cwco.com/role/StatementConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 10
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=d3e957-107759"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(12))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.13)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.3)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721523-107759"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721525-107759"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3367-108585"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=SL94080555-108585"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=d3e1012-107759"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4313-108586"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "230",
   "URI": "http://asc.fasb.org/topic&trid=2134446"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(k)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1474-107760"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "http://asc.fasb.org/topic&trid=2122394"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1377-109256"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1707-109256"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1757-109256"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1828-109256"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1278-109256"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1930-109256"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721659-107760"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2029-109256"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2626-109256"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721663-107760"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124437754&loc=d3e543-108305"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70229-108054"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721665-107760"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721671-107760"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8657-108599"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8672-108599"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "26",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8844-108599"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "34",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8981-108599"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "b",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e4975-111524"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=SL6953423-111524"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5212-111524"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5093-111524"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/subtopic&trid=2196772"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=109237563&loc=d3e33749-111570"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(2)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b),(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721677-107760"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123364984&loc=d3e1205-110223"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2510-110228"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2420-110228"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2443-110228"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2473-110228"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2921-110230"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=SL51724579-110230"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/subtopic&trid=2122178"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(d))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=28183603&loc=d3e692-112598"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "63",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=117411753&loc=d3e23176-110880"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=122040564&loc=d3e177068-122764"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21475-112644"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130531-203044"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130532-203044"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130533-203044"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130551-203045"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130558-203045"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130561-203045"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130564-203045"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130550-203045"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(l)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=d3e1107-107759"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(n)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(o)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(p)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(27)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=21916913&loc=d3e273930-122802"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39689-114964"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(a)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121321822&loc=d3e3913-113898"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=123468992&loc=d3e4534-113899"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)-(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11149-113907"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11178-113907"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121323062&loc=d3e15009-113911"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(24))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32559-109319"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r479": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r480": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r481": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r482": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r483": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r484": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=109227538&loc=d3e44648-109337"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5227-128473"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721533-107759"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568447-111683"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568740-111683"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4613673-111683"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123477628&loc=d3e90193-114008"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123477628&loc=d3e90198-114008"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123477628&loc=d3e90205-114008"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r534": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r535": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258"
  },
  "r536": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=SL7498348-110258"
  },
  "r537": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258"
  },
  "r538": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258"
  },
  "r539": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r540": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611"
  },
  "r541": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r542": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r543": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r544": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r545": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=120253306&loc=d3e28228-110885"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894"
  },
  "r548": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895"
  },
  "r549": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r550": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r551": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r552": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r553": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r554": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "http://asc.fasb.org/topic&trid=2175825"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r558": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r559": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r560": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r561": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r562": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977"
  },
  "r563": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r564": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r565": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r566": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r567": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r568": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r569": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r570": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980"
  },
  "r571": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r572": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r573": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846"
  },
  "r574": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r575": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r576": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r577": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r578": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864"
  },
  "r579": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r580": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864"
  },
  "r581": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864"
  },
  "r582": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "850",
   "URI": "http://asc.fasb.org/topic&trid=2122745"
  },
  "r583": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124437977&loc=d3e55792-112764"
  },
  "r584": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=d3e56071-112765"
  },
  "r585": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r586": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r587": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r588": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r589": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r590": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r591": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r592": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r593": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r594": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r595": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r596": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r597": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r598": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r599": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721491-107759"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r600": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411"
  },
  "r601": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r602": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r603": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r604": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r605": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r606": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r607": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r608": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447"
  },
  "r609": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r610": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447"
  },
  "r611": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r612": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447"
  },
  "r613": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r614": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "33",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447"
  },
  "r615": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(a)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r616": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "35A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(b)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447"
  },
  "r617": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(1)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r618": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "235",
   "Subparagraph": "(c)(2)",
   "Topic": "932",
   "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447"
  },
  "r619": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r620": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r621": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r622": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r623": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r624": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r625": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r626": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r627": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r628": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r629": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(13)(f))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(d))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r630": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r631": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(20))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r632": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r633": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r634": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.11)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r635": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r636": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r637": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630"
  },
  "r638": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6957935&loc=d3e64057-112817"
  },
  "r639": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "405",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116652737&loc=d3e64164-112818"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r640": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r641": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(5))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r642": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(10))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r643": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r644": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(5))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r645": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r646": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(24))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r647": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r648": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r649": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r650": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(10))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r651": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(11))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r652": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r653": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r654": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r655": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r656": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(3)(b))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r657": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r658": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r659": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r660": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r661": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r662": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r663": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441"
  },
  "r664": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r665": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r666": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r667": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r668": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r669": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.12)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r670": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r671": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r672": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195"
  },
  "r673": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840"
  },
  "r674": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840"
  },
  "r675": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12)",
   "Topic": "946",
   "URI": "http://asc.fasb.org/extlink&oid=122147990&loc=d3e611133-123010"
  },
  "r676": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r677": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123366838&loc=d3e3073-115593"
  },
  "r678": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=123364037&loc=d3e3115-115594"
  },
  "r679": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r680": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r681": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r682": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r683": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r684": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r685": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r686": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r687": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r688": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r689": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r690": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r691": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r692": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 4))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r693": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r694": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691"
  },
  "r695": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r696": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r697": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r698": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r699": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721494-107759"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r700": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r701": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r702": {
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Paragraph": "(a)",
   "Publisher": "SEC",
   "Section": "1402"
  },
  "r703": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r704": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r705": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r706": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721501-107759"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3(a)(2))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(d))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721503-107759"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(13))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868656-224227"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>121
<FILENAME>0001558370-22-004635-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001558370-22-004635-xbrl.zip
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
MW1<IA5,A=."<+'X5\>5V^4#:&^RLFH78[P9KL;SX#.Q2GE]_#WU+Y>]754U
MVUEU_O%-5G)F$>I7=JL-CGO1G-:N[)H4<\<\R2#;%&Q(J]D$+-?46QQ_7$)?
M3KPO\4P63R2WI]CY<1R*%R(^WG^S4X,NHG7MLAJ6E9RB]:T*,K&ZJO]E>OFF
M T^NO,Z(01WX+L,1WY$5=$%69$W>]F3"),0NWC;Q) NFE'?$<Z!'28:P+V2#
MAX7P_0H=YOT@GG,59H>-,_7O1&([-XE'L(IS37;*7)_^;;7*AN+&H^;VM#>+
MS5!VIU&F?&\?F9R9M[S[OO4W2QMK=P:]&3"[5T<%[ITX],8L)N&*\K@=RIBU
MFXJ>6HK>Z#&U5]2)7-Q-KXN2!PN'1>3>L055N\/MQJ(W-=$MR,4>S+NW-5*!
ML>CK5)_<*U>GW B$?>9<%C/="%R3%!72$?13I3LRKP%'F=)/)6X(X[\1-Z)7
M%&:1V$2\9>Q1$I]3)L=T)JK=Q\KJR>>W5S$]O30IF='U$T/I"QYYL!1(XQC$
M8E<:F)ZJG\I]CF!^ZC*//D9S&,B3PQZ5@HTH^ZGD-12RQK5<9H/;5782>NN)
MXJ43>::1>X\FUKQ[=D-U5'87OM7P3P(6$I?]29UK;PD04NPSH!OU.8QQ][C
M9<05.+P7,>^2L9\FD 3W?Z+87]I)*\V%^5<XZJ95T#YC;Q>J#Q&"-%E<D8U(
M3R_3L L7(#6&;!QC3#37I;:\F9EX5K7/IZF#%+%O;O>-Q89AT:$<7P@3X16*
MVU+M:OX^J#]>XX#T1)/#6?\)EC(VC;_BWA$H= <M]V(3]^CR0W6>F&W,[(N;
MH8,HNW5\J\JI/!TQX\2AV=%*HK2)JK=-O2JY7+0;]2M1]58_:5\RV$QQR%)\
M[^F()/L2&89,H49M:C^5F0:$4WQ?4:5+76(_54GF/+ECO])LJ)CR?1I(DYUV
M]?,/CRZQ*<Q8DCLD>7MK0OR=3A8:= B/DL^M]V7%[%5>G?L(1B5\K35P:6Y.
MTX*^#X-Y+.YV^(T/1JB<AC-8BC OW;,:_Q'AT!P6%6V9LP\JRZ'V 70H=B?5
MSSWM2,"._#6>'=I?77]9ZM]K$ONI2O%B5'(X![/?[;'U!85U;SZH?[(B>O##
M:33_'58%,S^7JKYQM1_&/3[\O%XL*(9!V^KS!"WQ"9W-;>:RV+V8\C7QDFV!
MK*(ZY>S)]L,575".70]YC<^,\!#[@J!;-0.U,!1(-@XUI.WMM+0B_Q1D":,
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
M".,GDL".+4A14XE@6C!] QYCV3 NU"0AG[W/P,5E-$'>,Q2(_110:)&!C3]
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
M$B)OMK]V?L?D$Z+[O+-=^^X=6M%&5-;Y[_-=%%,"DY8P;#9WIV21VD1TJ4@
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
MF+T56.@,P0)L6W&(,3T!_F:J[@[1#4_ZK-6@'X0[N;:Y6D$2'$/-3S+S)%2
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
M )4N#@WY#5E^7!"U@F"&V!!6BD@79+W8H6"A<IB4&D XP5H3LX1#)Y%DFVV
M]XC;9HKCK+ 9A).L-4V%F$!0P=<46FK+.A0?I0H6M(.0[+V."A:@TH6,W^&]
M$\2^RN%5:0(A';NU;%>PZ":;$#U.2:54W 1"UG-K:E:PZ,:G&"/B.X'2E5AJ
M B$+N34U*UA T+F+>(U(>OA2*EU10PCYQ>MH71$NW>1+LCS]RMRWC4?KWZ/;
M$@%R^9?J>1).ULD+O?K0A\[X+<'N1%RVNN^V3MQ*EHP&3MQ/!JU&O^[HUQW]
MNJ-?=VB_[JF[:UIPU';DKCG58VU;'MI>CK6L>A^*(CYD=($41)6U/$F'K0R9
M3BX6?()<VIC-P_:@;*]17#)H>IRD/U>'U#=\I]."I[;7.YU\C,IB><Q5JQ!I
M;9>3].-JL>HD50IS"\T)\OSX#+%82D7"%%G3D_3S2K$9G6*C4PR44^PEE![N
MWG'60C7B3A[!Q=C]8^90&9KC#8.$*RC^ZX)//W4IE!0L.Q?9#X)$LFS,UX]L
MJHF;FRO[-$G0G3CIA'">PJT=@BHDFA)Z7%GQ51G-]L<VM\Z>_3;]ZA#/\(%<
MT_&'N:3BW+JDW']&W@.^C*(=(A%[UQGO'^CL"H^:6=?AO6J=B4*Q +(),2#X
MVW20*KUNIIV!^-YLI-N&FZ"B*U,G5D[9JZ,LY>TA./'LQ+,0<RE'# *?M$I'
MIG-D1GJ; P_X+*DULD@>+375]2=KT->F;+)VHL4NCF(G9-4L;G8*A=+!/!!\
MWQT)9OO$@I>1M2&.GVC#.+H,;Q'%S/M$Y%4W.YD)PN4 3.$3D@N>^+']G]L-
MWAE_99R RS&+<L9!=/Y,CQ!^=#SW5M*#V \$X9JC(^&I00UXLM%P!5Q@LD1^
MO"/9=9!_J&V?D*,C164P+X3;'YAJRX!X+TY0<W;"%^2OUC'RID\\.7ZV/&^)
M[TJ]6GW-#N$&#:;0&I/P]$17>N(2FAE=B&^;$$"XEAQ(A-LDX\L3XPS!0279
M$@@(KW^ "K,E)4]/GIM:40/8&0UA@O#("J;UT9"P,(7_44^/1VMK[ XQ9M/?
M6<%GPA*;.<$#(IL/*I'O&Y)^+W;>]2[I?=,34I!'">H+QR>_.L$.+98IAM/X
MS(GI/[DU1E?S)<7&#R/?+38[N&UL0T2JA5_D(2(9L!,G@7:RI.!.GA@@[-U5
M0L5HXL23>(TF'H6;_;PB6:48]JN?P5_MAS(<QJ@3T%$G8J@35^)T%Z_IXOH+
M>9^IP)&<9Y%E':?H%/::.X:G*L5S%S-](S$MG= .C#50#[$J6NI4U5W,!"2X
MIL-%W)(4RDG8299H%."OUP[Y \5\0D7&:$E+"/$W':Z-8PYJ"?Z=O/N(C5@B
M; 8W#*%=?@B1[X09C_@)F?%#TA+NY7S++)'@/U2MN0=F[[/G0I[_Y'L[:3E
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
MS'Y#Z19]^/AN_2VJL!Q_Z*N7S2/A"BON+.1@<!]<QN[I1Q=A0#Y\EX'.QZ]
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
M(QWBA,A?,A*U=F51+?E]*,!6MNDAI*S0C04Z6-T;:][4E5=*$FR!+(D@F8N
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
M4$'E:)'>[0C>MX@&#U2D!!>G74BAG,(PT6AWU6,CWJY]]NU;@U7E.8WJ"-2
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
M=O]E9>Q5GU7\S>DW[0[</>0I/^6(X@Z*#?.21-(OUTE(EK@LPOEULI$^=S3
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
MKUYPMHG(GM?F<DB.!V^<6H&45XXR)-B+1C5'INM%%D^6J*C&A3I4&2U476Z
M28=+-.I,Q$X>D$LAL?DZ8KY)D]T#SO:7>*TZ^%2#PUB/B7W1:%2PSFU%SXAL
M%1(V9!3AC(10>T11H(+#GB+<9E&RB0Y!3*N+U,(D**Z%"27">'DS,/K\U?^;
M@'$W !Z?_$]WXN_5!5T_25L7=)Z=[E/IZ/^GB3I/08Q9M4Q:,7]#_!']89F$
M[3\(D+>L7-'IX_:KE[(LRU59C?6.^+:K[18K+_=<,P'W#-3]5)^^&W7' <A#
M4]?B26_S%MRY"=07J!F8_TB/<$__UD+@#"%)78L%JME"%5^(,H8X9S"NTHO9
MI^Y6*+)6%UZCM="J66?_P,W8;]7[SO$=WJ1OG-S5O2W/-:\CFN=]$2]T>)5H
MMSQSS8K4"Z"@0)C6B-N651AGE/N^"++"*\G7>!<E"2L=HI+_K;C%ZZHJ(.]B
M&<0_9>GQ0#!Z%QIQQ\(;=+H#IWDR']US_+?ET@<)-U\H6K.#*GX08XAA.JFL
MTCXGNYU]]9CF ]S@//^+.O#L+#GVQ5G>S&(TG2;W6;O\K')#/#)AOTGN3L+Z
M'.F:=J4UI4#;XP.==_85L'7<:8OL_K2S'V?=/2G'%YX=4$UNSC@9C;D3FHUO
M^2:0\HR)R<J&!^Q);=[I@>;J'M&--"YO#6E_JM7V:XY9'X?5N@BBA!Y%5T<C
MG]*LJ<E+SSQ431$FH0AT]SA^$EK7D\/)N;_!',MK]Y*34CQ+MV>$)F]E@BJJ
M]+CL2FRE)I2B9L=I\Q:>M[#O&:?C2'N\L)XG*!7FH]5:+L'/0N$NG\I:TROA
MZSP_TE2MBS1G 1BM=Q]>LGX3I5]<9;>T4GX0E__]T'@YQ81/0!?&9TPV(:+G
M&$W4N?^8B&-)A>IU@2K"B%%&%6G$::,J "*&4Y*O_R0, !/VS#4OXC/IIN9(
M\4AV/[M'%%431G[U)B-CE>V")/H'VR==D' GC:.0_0=/X,^KVE>K;1E*!3'9
M.Y)@BF[$#'N7B6C#N)!))T9T(Y,0=NY*)N1:D[949D= =A+\$A3'#*^VYC+V
M$D"@+;B2Y=9>NP/E?E.M8*&[$V. [&%4#8I^?< O!3HG'_\WJ.VR+?]>:739
M0HDL;+?$:C?F9_<Z!!@--XL@:KH:VKG&FUA1];NB$=2AQ !4G?MHE["2ADG1
ME82:([-&A>RVR# JU4\T4;WL,)VK6A^V.FHG("-!!2OT^7VOQ?9_E(!^V55Y
M@7)R;6)PRR8DN/MDLRBG-\!J#) [6Q,[]G=3WBD5O7*+TYS$+29_W0/?)U73
M"&C6.@FR)PJHY$RMBZ=W^*BAX4'P/)F8'IG<7=W8UN2\I9!0C[F43+??<77
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
MWE7S8!\7HB&B0+<.+D]*[_ FW261?1:C!1[H:;Y9(,D!OAH)ZLS>Q)'RF%Y
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
MUBF_]Y- 05SS*9EM;O4Z($"7> H^--?N&XZ"-@T.2H]%7@2L4)WKZSA; 4I
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
M 0YZRJKER;+4>7Y@;[92A"DE%*"\2#>_D9U!NW8HS$%H/P'KP\"'%#$T5%9
MK1%G, 5BGGR4JQ><;:)<D6:@@08T 37S'?7O@L*JOHH?;8,+X4Z!^,:45C\G
M;I)UHF='_EQ=<$6QN@H@XT6%ZX3AWH+6ZD^/]DO-KW&FO4:ODYC;[PVJ9..'
MQXQN%VR6A\&T8*[41PDN7JP/(@1VO3Z"6]E5LY"N_\2?F=2Y^O5M7,%IHM,B
MUJY/JF:5_O21S5(A_1P+& D'N,.@3U79ZR#V0( ^Y"&>1-* P1H+P#3MA:F-
MT(P"8VZV?)GBNZRB0Q4M2+B)G96/7\@N@?SIP.G5VL9>[N?YD34J)UCY8T H
MLG\=UWD41D'VRN-#QT8X9DZ:26"HU4,8]F(-E=BNMWX3"J7^K) 5":CBW&;=
MUE@R *!* QT66U4%ZE_=5Q X&;K["H0"( 8Q7]..JY=#Q*\K+DF,+%-? P)\
M$P^Y"*IF'FUH&-=OP5(WZ[X&0B%->2(N0=C*0.W?ATAR&NL@032*-J&R_W0,
MLH X3OP)2W6[_3N *LL8K#57_!%&4;L<:+;=6TR#$=Y3ER;G5;@\KJ#G3_01
MN6,%M9"@!D$$!N#RN!>+Y6E>G;9,\]V:R?VGKANI:Q;G;/1_ULJ1RC9VCH;^
M)ZP=J6NPUZZTER]030LI\EW&]-Y[,R9^8RAFYI2#?U93[TRR6W._ :O9YEPV
M25\-]DZA9F&!2B80XX(EM3=\(($1>D4QQ&G<J"O+S1O:_)])AR[GUYI$_1Q>
M!/DC^1KT?^CK[J<@QD+3^Y,O.@%=#^H#CYD09:7@(41A:P8/Y]@0TY@-98$H
M769^[!_""#"N:JZ)H5!OPP_<TLN$B+[16A6/../)21?'+.M>ZTY.W7N?8#,Y
M SV#CK3/_L',]P1>HAR$.0HV3)G41_P''\E[;S%@FBJAZV=$5/J42;_AB--G
M_?60B*6'DZ )AP_!"\[O\ 83)ZBX2YZ&+LQ3I,DF1'RB-)HHV-.EB3C7G"*'
ME7_8<?\0U?Y!_J)I@9[H6"@(V:-P.AK*ZN'</W>::X;Z^TTV F)#(#8&:@:!
M>2,UU]S\K-$ ]"[!/#4BCM/G*N/A7W_\XY\6'S[\@;G5?_WAPQ\7'S_\:4'0
M\@/>%-$3CE^_?2LA&S6%XK4J $+#4?;TG1;5GBYRLQCD#01PUE,U.(XSCN!W
M.&?)_B11'1]K4=::H898C\<>=V[>3'0W=-::.6@J#.%F#HCC@HGNQ#H=.2O4
M,=*ARPCZ'<^IIV!((->EYGT$IV)9%;IMRJZ9[#F2HD3+ @5%D47K8\'3$=.3
M:*\IX4+^1-;IK/R=QGO;!=L+;<KL@C46?V.I_5&"T@2C5QQDJ"P$E-#F1'$5
M+-+2PJ^;&).@<LN>3SFO^S/'_/=WO>UJ07E9+LCOD-!Z.H"+XO80B9T%-&L$
M/Q48OQPIR'H?G6FG8V \)J7I<P2F87@"PV^?GLT<8EF\B)UI8KB8PX_'IJJ!
MSAA8;7M(J9BG092 JJH/%[I5?KT_&?=UVH?R.($E+Z7*[69K-)W<Y>-\?NHG
MJU8TCX"TKXH; 7D+EZ"OF$[KK 3K*(Z*"$_BJ8:3@ZK0,D[\=OF68;0 :KN,
M872*#4C# %3H,?$<<$./&Z(36[OB3*=U4-X<DR^KHV[9ILN, W R8RM(??AB
M0H Y7['C2G/[U5Q2T%.038;#J*GXXM%%UT!!3ZZDA LI5*,"G$.,DJ;^'NS
MMO41)[1TGL1(Z[9](E8C=4W2<I]V>  6WT>@VNIMD& LWYXSC?679<S?48/_
MEE=##Q2KB&-['R%>F7[+2@XRD>11P<21P(]<(&*12JL?(=,77'IE)I#+S8OI
ML?D(H6XP$<B_'4J/X.R25D:@Q7[HF]0D)(:5%=$_=/N5J8A[?[IJ,34#SU@U
ME'T^:36R/<$^1QR#/S,01GD#AZX#YDB4&(.7_KS?/.+P&&-:>2/$VRB)"LS*
M+EZ3I3S9133(8X<SNK>E?8D U;D8)&JK%D8O"N[K90Q@KUM3HR3"R\149,I:
MH0VAJFPH_)O+3VHYSU\_!W]+LPMZ\;Y\B517A[THP.CN "%%Q>V![EQK>_/6
M4=E/>A5=OR)&!C$ZZ%=*R5.%;<3]$NSQ94I[K/6?-CD5[Q17)ZRE\LI(^*3
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
M<."#3O\?)!&\8PB*[T#(0XOSDU1]+N>^OC+2\H!ZKDT-AA*(6^]&K-6GMX/
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
MA,G&5JDG_4?G& &[+%4.OBTA&G-;A)6V#_%ZD34U7'9]M6/1F7;1O'4_8);
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
M5H\^N8=BP1?DX1&S3!:[EUDJG]B_:XJNV;_8C_(G]A]X>/&?_Q]02P,$%
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
M\E4H.D/,@D1X)[D?>P3!\Q*IF.FRF%197TK0T6VZ-^:2UU1?@D3B<!I'2S^
M?VU/L52F[%8RE2%,<IIC"ZX3_C8,8RY6I!7,9@1%1G/NF^L$G\51&%D>MC1R
M4*)0RVQ>- EJSO5RP1&'<\_!4-,<DK05UIR,5P4-,&XU*#6,) ;/)L. 9+D5
MR:D[#$)I@XG0O+<P(/Y41>KFC06MBL%T8-Q2R$B0M8<[ULTOP]D\#6#!>+>*
M>DZ[6WU^0?^YOWYX>1[,;@:W#Y>S^VLE-ZJI4)M^,ERB$FK\&)^J"@WV!-Z
M%Q/?Y.5_+M-SI"[X#K,VJ\./*HLYKPG":#;/1"7.MH4R)B#;+)"H5[6JX?T:
M^&'X&/ASHD-XH80)T#:)8XI[VU?@@<!R<4X&9P4]B+42P3=P_;X&7D@:R0VU
MC"! "Q'-,<5\M:!WAT; S'NV7!QK(LLZA;2!?[A=K2T8)!LOM*%<$)=QWF:,
M((X(F24$&%<;3"U5(M8+@2HU)4U@ ZM8HJ*(JUY/'GS/+XN<39@-K]0;ZYE
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
M<:PC%:I;-_'JZ>K*(OKL(&UFPYL)#WV.'.V56L=<;K47OZN;B3[A%:NR/P8
M;0N<_#8DNP1!PRMQ$TN/X\P\8FGL$ G66B]2?#PDKXN/UD<V0R?2I9XMT1VT
M7J&;[C/JY^Z\Q ??DMGY<^824HGF!+DPZ^4S2H&DH"_^PT.ALKDT%* '"='[
M=3R5Y@O$$T ;$F+4M\9ZAT@E%A5(==]0^):1\7Q_F7KMH=\U^K9W:U0[_NWA
M:36S'D3YK->^9%.5V)Q125SO*SJU65;]4/W#H-84%*\&<W)VL0_/SO.<.83J
M*+.H_7UA_M*).^E=G(#0(Y2&C.<2K^P:N&V3HDE9'WG08!S<.@"7..W3'*(6
M0#B;7X'$=:7.8L%64SLJ"$)TQPC101F2#??*@D#L:@1I',W T<>C:WG1U'.P
M@\"ZYN$T?P/F<TR03LRQ\R.Y;0"<Q/?IV7+!;,Y-+_86#HA?'94B*HI)K0%"
MU=FO,NBVX?7SV#ZW'L77L74[!\0[(:HQ]/$EN]8[;^#+:AVI-VQ)8UQ'G8BR
MUVMZ2+R!GN79 @Z)E(:TXYKH0R*O[(*L]QJ8K?+I'!U\-HFT_-7*]Y+4'PW+
M8WTE[=@B"'3R6LBA!RE'2%V8\YC+D,B/MJ#I+X!G TXZ-;5TT!QKI1R##I2;
M'>@]])(-7_(H,$M3U+BCKZMT>'3BT(.AP7V*!^@GL(X#>VF%Z!B=YKW&WDCE
M<<9@G&!IYH"H)D(S@JYX'#"':8H\Q>FF2V8;CN2_C?7*VALC[8T.@%?LJI#\
MQD/5+(8&UF:#<.=[BQ<0K*[ *^GL1RI^..SATD#7<U[#TG>JO2FALPGA<(C5
M42>B NVH-E-A'>#_CV\?WBP7)$^E\/-A&XT _ =T7BG_HE R36B[ZU%Y_9Y%
MK40_+"UO 9[0:+J>SP'1Q+7?3FC'\4X.7HKU]CD./.(KITYM?K*4K(:NL:=*
M66F17$&DS0:QD[**\8*W@5=1#6[OV7UUH0SO!,%[=(@L%Z$U0?&S:(/B^'-0
M*(*WKQ=XZM4F./37XTXF\YX/#OD[EX.=TVF3=/N08*59NHZ&RGQI?,]&"MBZ
M>7C.YBR=Z+S)S8&UOCGTZB:RG!A>:JRB<+&,9O-O(4@"&LQ>(PNI$IU-\T/H
MC1]L'_PF(9 )+_X%M*@=O[K1I,:D*E@WDC-]JLO,\!K=AF&,;Y\N_3#9CN X
M!\Y5'"#%9*C,@D>T4X:6F_T[R<*"L*#E;^C8KO$$E:,AJ1F?-IN___JM" !:
M$?Y(?[W[VTSL"@;XS<NOMK]*/X8WNJX?QO@Y D3Z7%MN9I?>3'PILN ] IZS
MO8Z,8(0;'AZA_S?X,MBV@_ZQ:6I@Y6VI&%^S8&%Y64:.2[1]]UWHY-DZ'@O:
MFLTS,EGN9J4E;290?W\(;?_'<#@^4[6CLB($V&S>_.2^4K \ ([531&R *G9
M3+$I06I>PI'L62"+OX,FP4>D/;MPX]<P#8RJT\"VK<$Z;TQ)*MN*3 R#FUSI
MAZK'+,]PX27O$KVHVKL7A,R%2W9+8JNLY;"F0U$=J!U$E;S3E#Y\,Y,!P0;3
M,(3'U2&,&QI8GC/ ^Y\!*#2IRA!5E:[AV$^OA%EP=(PV,:/1R>A\.#PZ4_7H
MMKZ?6S2:!CAS_3+Q3]0_36N!4+TEK;WX1BS:A1"T#]O@O@V#?D)<M\-!L&GO
M;P,/M:C&GRWO0]- KRFIS^C&V;7"!S]""U!@.9NXAH4^LX_T5FUI-^I9X:H.
M=7'R]WO8YZ&!64_JQ]6AOFU"39#![.N%J:PIUCVQACYCO::334.:5D6[D<L+
M0G4$<XO;[X&:!ZH-<;1E?X%:8]V2G]1LR?/&!M!#0F3-J5F:DW"6V.V^-MY]
MTW+-6%N1&SVU=TWCF;6Z=F.;$].R(WT'F:4.\+%\VSDATDH:I1KI+$ZN#;C'
M_VF=<3W]UM\&:_RUY'0.\N^E9_7"%Y5/$F35T*>'QGKEI6:$YDI5KR>(765?
M_WF:*(^?4_4/!MM!59U .BNAW[L$NK=@PT1Q5ITHBNT-_&V#2JZZ:V5+'>VV
MCG<L=GG.EGZ,)VB!434SE/M4]#:LD8%]MNC:K#8SB A@:V[W9:A'\LW B7QC
M061Y"XAS:I3RYC3,*^=U-H.\I8&5-J4R$2,BR*YHS-8$KC;*B]@8_?=$F7V!
MU-=F,T-C36WF!G$@U=D?VNFAWQN,Q-..<> /CZH#/ZNOQ'R>?)IA>U N^&,R
M/!V/527FN4-G+@#*CHZ-]_3T2MJ,3@:=UQCN^67K^X5\FD+WQ7IG'G@U_G1I
M(X,H:451-J!4"@Y#/;%&>8Z>')V?J_)_J^ED\PI*KE(F\-ED/#Q5;:CG Z%N
MH>04M^_C]=H*/#0UX;?K21PLQD%;X_V6MS1 T]T@3-I2P?%=@1C64%*5'Z,S
M5:[RNUUJ&J;$\MJ,47:%5T<EGW12AJ1L4U@6V9!Q^-5XKFV;4&/XR;[>L$Q6
MRI7GY>.C\U/N5Y^$;"&;3Y'&#J&4-B.&3V?;4<,C5[\/>,]@@<WEM][<#U96
M\850P_BI<0++VAK 0F-*G)[3?CR!M1\D3W^:UR]2E1^C\R-%Z]=NE]@WG PU
MM1FA["!4U[2V<O9P=<,OSG#4R^2Z'%NXOP(/'8FQA6OJK* 'L:8B^ :R7-RL
MJV"-?Q?^U,"?#X+L8\G]\"+]7/*S5?K@ .1?%+'B<,M)&-O=&I.WHG)WB;KR
MMF^M/"[.U1F%) "ULXP+5I*$Y5[R"H_#FUY8(7 N_166D&>5KW$F2]K[\HH;
M'-C%%E5=$J<]F\V+XCT!%P=&21[J)N>=I+]YX.K&'7:71@5,'OM6SD51#H:;
MY"ZM:C/S2$2[]GY9N-+Z??!X A$,DF>T%V@^GD/6Z^5AC7_;MJW!:]Z8DO=8
M!623*#QYMYAMX!PME)EW<G0^437//*(>I_U-'E4\(C('%70Y'-M:-J?=S-(5
MS.HT(E0U_9X_-L_Q;Q//U17[H]5AC>/;IK4!+#2GZB5(&*5KC.LF,!=_U?S6
MI;FR/C-''8CL$P5C[1+Y3X_4SPL=4*I."5V4T.\9 *?)@IG.$I]Y; ,"'GL
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
MV3QDY-QN#NL,+KBI083;4NW$D@G%X<1"K%$^T8R/3D]5Q?XH.F'@[EZ N5]
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
M_5T / ;^&@31QZ-KH=V8Y^!MVCHYUG-> )RP70#DW_O;8(V_F%P"@/R;9MT
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
M1+F553!X"2P'I/O9VA<,]!K:#5)6;>[<F;:04LH+<"53^55Z[SR=SZ$+K8C
MAH;2!C"AC8127FY+&NJ)JRS74"_6, #@ME)*67E5/4#9$?YKX(<A?<33*QG
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
MZE4UE1VR&6PX/!Z>GRH:]ZK?,O1[7LBAJ\X+ E1BP%L&CBM6:E 3KE:TXY<
M+G3RJ2(J12]O]0:).-XVM&A).]*(P)>;-<R:T8LY&[=N^NN&W6)]PYP9G2KN
M3*+K!>I%'$(/(';;?\8P3-Y'4]8(0FGM():R%O (+^AY@T20\8\!H,_PC?6T
M YX'(S:$F^65&X-I"@+PCE@<HXTQ!#@^ ?E]!*EL+V!J5O06,'YIY8+T" +[
MNQ6!X-(/UGX:SX$,$[FTF4!QRJO7W*GNH;@.^$M92+LJ1-"+-&,>BNM E*Z8
M<K&DIP<H60_%-<>_PX&*4P'FN*CESW.?0.)Q7E$IC35,=<OZ&_7[Q2R90.UU
MH=<NI"0'#D2VA&L.%I1K'"+V#!J0NJT(@ZB -OK7+M+H5S^>D.B@9B=9^IMV
MZ G=(S:+*L@E2N"%#3NVM2-VYZ_:X-L,10ULS>-+SF:,"8-[Q,U5O"*B4/J[
M?CA0^E5&HED.#;"PWNE8%/_>9RP:Y=!KIT%9B^\:0G.P5-4&2546#KHF!#E=
MJO1&J#$98@,@AG6!M/R['T%O@;0"$-91F%D3'0*EVC6F'<E:\X'ICJ*M1@QP
M?:&_-B60BE[)9/*TD-R 8$#Y(* H\CN BR5^VO\& C2.OH5@'KMW<$[RQ>O2
MI-$$$ZT706^O2O23Y<%[!ZP0A,G_9K[NGE-(D,WET#L\JD8P3]O/?\B=>G'T
M<G?[%<5.OFD?&[QX=PNI\<G-TP10?6Y+A<H,':NWNM=KN^0AVRR QHEABQD<
M[OS&C+"DXMKAQH!*S<Z/1[J>@4IW0R)6T Y8+HS8(*9(JM?UYF, UA9TLD==
M>/&;14L07,8!UAK#Q15[ [W G0)<%?F.LNO%A$-+SJH# ULM*0IUQ9!#58MT
M]%KD4-6!8 JY4B6N2*7J-7?N+ZFY#J02B6/-X:>E1C1C1#[DFNY?J@6UP[O5
M*L4HEXPDH:(LD*DYJ"&V;ZF0OM#14:BQ"3;+)<5Q3Q?8\ST\"_H[9;4C 0.6
M) *PB*:! R?AA4>V;GB+@GDWDZCNB0>EN*:8LL"SA;:5D/JBRY&F-9&5@GS+
MILQAA4@%2(C5OET5ADI7!>S:SK$P5(MKRIA6:P.C=.8$ BU/G4_X1G0V_Y9-
MH@0B4.N4]35!^CK1@0V,P%9YP2^LH-6E?J[@WD$*6FBV^A.QUFQ;,X4N,M2@
MUZ+#M!_=&1_56'),=30E1?LM*:.(HN+[%D+%J3][%AQ/FKPQJB6U8T)KXP.K
M<%*V%EJQ@,T,0:Z@'2=8H:62@D5(#<ZM4K:=N1H^ZH^S;)5TI@4+N$U;3R9Y
M-6"(6,M&08D"C1R%5LVAC4R%Z+45%;\F,1M!J'5TYE+[E8E13E-M(IMYEW@$
M9JZG,S\8469>I=C.MB*-)*KGD-F<8_)M)%/WAHUDFR2U2#YUC:486S9CK<%=
MI=D$P]J2SI3BV24)E%ZJS4;5SJBLGYV'4D\ >S[E?WP!P6K(M" V-U-6\'$?
MZ254=$$11G2S!5%UDPR]V(N>K AD[XG;L*NFF4-A%ZOH4O(J;=FU>4LJ]Y7C
MI;]:^QYJ!^T'TA.M'T:\+QPKV7TW+QRWS>.$OF[RWM%&7]#Y=2/Z\(_Z@C\F
MP]/)T42+<8]Q8AK9N* V8Y=!MTW#E2B/!L8[49["2S^(\+K6A'2U8+^19I1'
M UL)TPD#"Q"V/510*O<39 $R2LC@VN&4*7(QH@QR0\8VTY#NG"!U;VG>4KF?
MX_7:32ZT+??2"I<WKO_SUIO[P2I].LJYD:KD?MMLI(H?&MCH2X,Y^M0 ;K^E
M\Y:*5$B#?=2C]9&$(V;:2^6%RQ0^012>*#X+-0:0X!!$\BL..:Y3]:L( 5WN
M^CT"7(QL^[FQE#LYW\11_G,N*^^$/"%.R&GCV9%VG36O\QS<L&B/SI5M?\(0
M ())>8-;#!X03"\_@?L&[A&7EZ0)NVUSVHQP!ISJ-E<"I9;J@:W*>L*J(9R_
M^N6GWY%=62N'02J:L%+7D5YP"7V9%)6,NYT#XA-17*DV@#XPZL:/2:$C>)LY
M'#X1I15E>.@OG>";B/D)-W- ="))*^A6L)]TFLY1OP5QJM3681"K6>2,72<'
MR:Z.A#H,#M%H<RK%R4I+VGSSG,R- SC7[S:.L[_"_VK#(5);!A.*2^2,76=M
MV76>LLL#"YS:3=YM;/%E2&H-17]IX^9):*"??! D9T:"<RDKT[$6-T42GMGU
MA20=9,N-B4<*IX=^/6PQA!0-XN6\Z&IESG(]H;I?8^C@4*:R+Y?2 *HOUGO9
M>S+]]068^Z4B?#=.PVJVB+2M080;JWA4PO2/K\E7\W^E1=5>16TTL)6EP3>
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
M*I3I.57H@-89P)ID%V09KPL\KLWE6]/?>:_C*I%B.US'?64H9?X-W7@TXG_
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
MJ)>:RQWY<+G#H8_<$5Z)H9[T--WUP\K&DG@L))<^/ *T44C. *'6<EG1<9]
M!-/''1?  W,8A7R1<4^/AKN1<;=-#EZS-A4'Q2V1PW.V'=SVNR$"+D<+I6"G
M)\?#H]-3Y>%NKQ *'G RB)/4B]N.AVPA;1G:* ^'8S0<3M7.#UUAJUD).NM#
M91Q:POJPU0L6HR;8$:&4=GAW1V=GZF>466X$DG(G:H,,$<MI Q&/.JD@4.22
M$=DO!/:O"__M-]N/O2CX2&??[!\)5BE.Z2]^_.O?N\!L_J S$A2=%K"@BR)3
M^6&T#E+-XY^V:L?_^G%SMZ/S[+>]5SA-#AF!\IBT?3FMT_;EU QM$^20&W@F
M6ZL2;V'X&N.V<:\S"VUP;T5(S,R;./\["'!0Q=D\^2-IQ1;2L#; 2EODY:F)
M\BI>]$5+9R'(^PI!36M#),F@BV97FPV/%OP:'9<%(8?2$M:X81QCVY?)UZ ,
MGM4;.<(@*A@XT+]VC1LX/?83-N_5+'JEOVE#!1GK5K.DE. 4K2/_=(6L=@+8
M^6M9F!-U-N9F%=? 09%!:MAY)@SNK7>XBE=$%$I_UP\'2K_*2#3+H5<*@.IT
ML)T--A<5!/LL4UUML)0Q%7;7A $1_QZ!%S9Z")0+:4>*]@!6R< @JB [O/+H
M382=7S8)3CTO3MSN-W\,T:XO=_[*-H#TN:5+RT:33)9^9&17[1$IIRML:);
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
M/W7#R#9<R;T=_E,0)YFN%SZ%6(]>4-K:9%*NY*9:#=!L+;^:M"JI+P*&%]A
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
M59H3R(F=.AH'8$=R].E&[F?Y>J>\4M+SQ=BAU139-Y-\'0XU=B%ZA(+G=&_
M\8+P]X?JGQY2/*^F9Q$</[.:OMOT2P!75!W7>S/>JIV6O4SZ#,\#T77&!3Q?
M7PYO"F_/Z;[#[1UP2ZTG_"(7M\T>C^Z0WD<07:?:/&LD4WS0[C#<D&[@TB)V
M[NQK98N&^>-Y$W/H?JIY.=D2N[+]C&K3=-:L5ZK%H:SYV3YN6.B(=/.QRWE^
MEVK3'AZ)\_%(7!R/1US;68 4R$K B8663*O.Q$P.E%8NB.=Q*;^I(WDE5XK#
M1LGVT"4K/BI6Z)Z@I!FW,1E.XGL!WGVC9/RRP7-!_IZ-DJ"P7"F>-'4U-5D2
MRYXR$/EL_-$9JXV2MP^.DQLED>8P5T,6"H^JR3PR:;K%FE2+G1.\A8V2MP^4
MEQLE6W860979;$F+#6?A"^J"H@NWCH[/VRAY^Y XO5'27%J:B,S\N3:KMH">
M,YL#.77K_N5K-DI^W15$,&7*ON'@),&F^6%]6I!I9"%@S&RJ<\[]X*3]@Y/"
MY=#9RT\@/U?EUW8#JL6I[Q'!%.>Y7F&2KRTPFH_?^4#OWK9WBRKW3*2;;4)/
M1V.])M*NE6>:A-I(:GB>$9ET:Y7SX[?+X:M$BN7.%NGS [XNM]$%W]WH@G^L
M["E/S>1<]PIYWNCV4P+>E;UI?*\DB5==$C]_ PM^J0TLS[&0W& ANWYSWAR(
M[FM)19]DT!+H=%R+\MOU^)UN]+5ER>3YLDWN>^.KR;9<M3M3,3L8:Z6JR(OS
M23M=QN.PUCH^C,-V#.1;S^OLEG.\5=;9*CVK^-5\N^ -V_$\;O[KM (_W_OA
MG^3]KC\S2 VZ[6*]9*_XF5SH$GW#+1A.+(/<WVYF\"L\\-']3WE1#]>8<1,
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
M^D/^3X(M)CIE.K%CTQ_M.4EUPJ^Q')&\Z\214/E]]MQR$MX$)!35E41]+><
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
M?51JX$UV>->E\W1I,0'17L!G"O4'ME&!"71$H2K)"5'7'_5I5]%&8-, =GQ
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
MW]T=&>?VR$#-Y)W*<(,L6@Z]X?4<;+A'4Y@_/$N[QQA?FQD)@78O6,?=?*6
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
MG(<XK\<5/,J]C/+/KSZ"$.)2SA.) L_E ,0KZYD7D? +\KU94Y5'!]E*/>7
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
M%R\>^H*U0P^WQOG:[C\,,PU=7%560 #P"1;H*?V9-:V]"B&L8RT8R6&#F)2
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
M>.FHEYKTEY:1[J_75UDN+NTS_MGC[ RNP4.'^1B):?8Q_S.B%'L)-S@V;?*
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
M\03\JM\#P?O)^U]_-,#=5FMGW']]^NO3IX-VK_&@W3>> 25\#Q=NM1Q,#WL
MDYZD$0SSFXJO%"X$APP6V5YUW/N4C^T(82<:=G3PC.F@5C04$/N<:MD_/_&&
M/<$-D(8NW&6C-53SFOK=8E'N76!4G;KAZG#TZL:^,KIZKV&*8($ %LKLKQ?D
MJ\1K>@1UZ=;=?O6Y#LK4_:(E&.!'"P]&BQFU?>9=!'&,?RY5ZH7!S0/ANU5?
MWY;7CPH8<UYKX'M8,>A[U\J;JB!3H0O9)QAV%50_Q*[+\N4ROO$F>18M5$:
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
M@O6DR.:-W<N#1XNK)+[2?A;"7$%,80T=8+@^%^U6(0CQ IPE69!&0%C.#,F
MGHHWAH[HW[FB,!GES9%E2:\4U'0&10R-WX$'ER 6;1V0I?AX!*F:X-_KHJ5
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
M4@IM5F=5.RQ0HRXN[-80BT4!*!*-H0I";\*L'YUE:[1%L\?E,NE.7^K)LE7
M>4>VO$[40GV5"O'957&?0!V4BE#.-Z4$"!-ZXM?Y17MPS02O;?X0E8Z0L3-3
MJ3ASX+K7[(PNMM,^:!"PG(1L6KIR8V5'+1M4DGBS:<)=LT[IB#CG$&4?:OJT
M<4Y6B@TGP[Y%LYG;UJ'TF/HB21BIK2-$N%7,9"XE)6N,1D,\%+1C68DEE92(
M3QN43*>Y$[T/==YP=5N G]@237JN] 91_G<P1O7Y%'C)JGD3KIQ[1Q\9"6<.
MY0U<TND*SOM7@>C$^,OAR'"$^N]!8!0R*\JGRN3/[R16P)4OG#L,<W5ZLUD<
MAF)2%#=GYKHBMO_(.O.J3B#O8Y)^-OUN7I :/=,X7.69O;3$S25OY/:9?EXD
MU[$*+[1(E9YVI)XGBSTWF<>T*IH'(26"XH*B.DPHHW%(U0T9RZF*YA-0V9EE
MB4="$$E5;:]P-K*<CN75G::BG2E-+PZN/=-'BMSTL>":WW4A3S)>WM[%RW?Q
M\BV.E\-K-C (9 +6B\,J!/$A9K6BRB'<K<8^#K%0J2A:"6D%9,#2Y'TQ V[(
MQ4;+E%P "PXM!1A^2OCO:1Q$<Y@%-9(,O)D*B=F'P#K2:(KP!J#7;5)L?6G6
M%,>*<SD5,_G,T<5JN12R65DZ2Q=R)-S&LF1'X%F-;,3_+>X/<DU"@< -<'"E
MB1%33USFO_D"-:P$W9,:(L]1E>;!!>P=YM+6.%8*2AFVSY7,^#"9YG/NL9H4
M^Y).E&W06=?K=-V:^1@-QB2)3G(VV(W&H# !%KF[CLVOI,Z3UMUN[I%O Y?O
MZ-%YNI+(C3&U6TU!A#%/L*B@89P72:,4=*%@X6"L-?.2/XKI#1N=!#&E*>(X
MOGN&.#'^FV>':*%1K 7Q[41A 9L4-PG@SJB^LZ;VP-69G#M'J1>WO:+8@4.T
M!_(55^\L!2:N!8+$.)9[+;_5[?J]=J_4!C+$-F5I9@Q.6^O4ZO3]3J?CMUI=
M:W>"9IZ574A8XD*>,:"J,*6,=ZI8I6VG&^[4X_%#8*#'-$G3HU*LD5LY@-.&
M%]^)8%Z2<J.U4*1KS+EA*L/=P:Q!UAT3<E73]AN_Q%K"_Z$]6TZA;C&>ZG.E
MBQNI%>^(3[NM6^I):B[+,Z1+WEN;&D5&GO9,XUE9U_/F<A+K08,# J8W3SB2
M>KA 8G ]K6=J&F$   @&GEN)E(,S/7)FX6:J_P-F&B*L&[,&=Y&:J\KUT!0O
MUP0K6D@9Y-JA!)G$5$GID@:"@WO0&@Z'!0/H'%C\ZL:ZN4YT/ 1=B7QWBOOO
M, =C40F+/J7V2.)R<.*W[/;6,]97Z,)U]G% *T.#75TP&Q$?LPFT4=#26%>6
M?Q;,9ML-%*>'JBK<:;B[,ALNIV7374>90'8 &4HR@Z4!WA@?/>G1BIAM:1\(
MVY%;@DFG7)<-SI,%>R7#8(Z@%()>)QL&5!CAL<FT8*A,J<_,')(X+R2D.\E\
MNB>X3EG U>;QRD8!%NHB076&)H/X41F3!V-7S:1(@@>!LS"U-?#2*VT84L,_
MC&153EXQ=C7E[\UL-3%/B4F@$+_S#F#2J?6;C&'QL?%)%1]]P^-PH"Q()]%*
M[VF06<6 $0J=\R&"=:U^*6?4Q/8>)#!P:K*B#ZE4_D88<"@:9259@W,K^9P$
MN(,#Z-@%+<%ZF.*^SY5"!@,'?)T(M A_(BUWJ(8F6;![<.A ZFO1J\L)%SSR
MC#MSH4\QR"*!IDCR584Z2IF><A+/PQ>DS4 QMEOM^ME:^_:7_YK1_ZN5:R>.
MOL GU"X3/SKS8V(J9^RWX<B@)51KO*R] W>B?W$+%7A@/<]?@KI:NJ'";(K(
M]1_&/_5L<L@RSH'O_-_Q3Z _F0]?F,FK+\A&I5"*U?)_YP%WBC.>(PIJ*SR
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
MF%I OK6^S?;V=:.:-1R45A%&V/X$^^\L@QM4-#DW8\U9("H[.3ST68B_0-*
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
M#LK]^%J8]O6P8,-+L,?+'1(V+ 8K**V I<&/TJV1.MKE= \_"PLN[<+/VF_
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
MN$,%^J-M&Q[.&.=BDN'9 D Q!"8(3.X73!Q]?Q"PB]*#-/?D%.!8T7P=QGJ
MF!? <76C0!: +. B%A#22%U[L6\& ._J%CPT7(87\,*SK%?QM)\52X*=#09T
M(*- 1G$'1A&2-/WDGJ1]3AS9J61!:\?V1V-X"26,T?(=]Z"GAU= #G0NY&R'
M>FCA*_:G5.<DWKT%@C9+^'F;@WCOZ.$EE!U]TPQXA7[S' ,?1L8&]67"%P5A
MG['=I:?=._<G<\=F'(2;0B+H[C0Z%29U>:DK7M^JKQ]>N<M603"D,!0H7=&&
M-*70 T%3>*(_5/2A"OZ*T/J,^K).3'.@$+69OQF;2\O<S.*YF92.-[3L2"$4
M_'5+8Y&LU(M&H28MQ$3/="M^65F+"G7:,E<9MF=3H50Q%ZYM%*:<R'+CD<(>
M6MX\[;G /W'TGR4^?Y&+B1:>*/8^,H#?-HK_Z)]!;/V=C$*_G86=P9_8KTQ
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
M^J15PPD*PI8 HOF.#L^Z8?I-V;+[8#""&FHY"Y@OK*EF6P,PHT$Z)_ GWW'
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
M(/@]B.?_[9+.7AG^?T<C. *8MP2"2;(RYV?$,BX7N#&G%-I\QDJL%#HH3"0
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
ML^<_2>*)A<L!_''W033QQ#%7FJ-79DP]S\C_J+&Q ]'^OYJ5Y-D5"7\/5CZ
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
MFW/5*5:5G-:=52KBK%]>SF;=>)E?K-!8D^H4P<DE_6(L^-IM+00('P4(WY@
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
M+/:DPL!W%?OKAL4_+OR4U66FXYQL"XR621;B\]QXO,2&/8I_<U$FG*194C.
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
ME!\.RA*?-GT.)QOS=MP48UQ;X-SHLNG$G$[>A2P)5^E.T(DP19W6-R .(X(
M#X( #\:37@> %_U%K6XWS5,@;0G=<2PW;<1*)B<W$!(@?Q%W%@CNU5N4MF;(
MC>:G^0#?I1:R@>'71G2M$#Z>#2< ^;_Y/"DTMF7B3'I,9Q))(;A7TM.:R#9(
M06-0/1;K<T6I]5JRW>XL&F(7Z%QT;7.]96\LT;@J=3(>#S/12\5:B$>(2.]W
ME-[;,I8W2Z\DQB>14;;2H#8EP:B42A59;V'IQ9G(-!<-,QS]R#X=O-5KY\U!
MZ<FHHB7:]36W'&UW\ALD+-JA8)431LX>XMP)$($)UH(BIMT=T9Q?]VU@D:^-
M>%S7EKYDV95 +3:7L^6\SLF"[&2%U-3*0N2,XZ2@&!M.1$^3@HB+A^# 8^#
MYSMY;\N87@6"$Q\O-ZH+A4:A+^2*F5+25'/EHH/E'S&G:#B9/ V%W7,BT$B#
MUT):B<^Y@(P(+#PHTR'-# '9-N&G3L@:A6KI2*I3(+X<8@W>LS7X*!$L7*+W
MZ:3'K&W-!"RV%>!.++5@+L'NT!O>5%O>T-%4#4KXV9B632VFL_0V+U ,7QC2
MDV&CU!-XB<8UN^.),,->3'PD?AXBV=]2LF]8?/M*DJTY]4B9&9E3H18K<:(Y
M'52U,99LR&18B@MS9TX5_#TJ$RRF#AF??P0NFGY(8@Z$!E< NC*E";SE=@<L
M)UC+Y[$-O0=S^)Q'R8R&3O,S5:=F'X/!.;3L*RM+Y3NN)S*-0CVQ2$X2V@*B
MI5\,FXV%V8LA?>+W(7! X.#+^=/5X$"U<HU!7]N.J$VC)=3F#;ZV;#<0'* Z
MB70B3+./D^%S=!(<I$ECRU)7FF$0;\\#VH3!A_XOMR4?C!GE=N+\).0O'!;=
MVS))6Z#2#3V7F15Z::^< PP/FX0C7^$D1;V2UDA\043N'TKN#QL?[\8E$OQI
M)LZ2N[2.@K^POL*JPJ/R+K_T5P\3<3<0@2("=3I,]V6PIR>R.08A^#4QTA^0
MK#]0X/9>-62PQ(&L;[*^?U]A!2N>PN^JC85LH !M*0\-@!,0D:<,^9;\+1OD
M1)X@Z;Q@K:#'CLB==/?.DQ5M5((H _S_%LR]^#</TL^;:GHG^UW-G:0]!TX:
ML'&J]KG#JU>9IL8W(C6AU9OWJ-C,2@TI7F)P]58VG(@GPO'XZ18W4HZ#(,2#
M(,2#Q.RO!1 O;NF:3Q8&U0.&(#"TW.U,#4Y4G#%""E2L(\S&Z#"5O+2IZ[Z<
M RC?P70M>T-\ \1V"K+M%#A\NVT@_A3B]I*J72XVU)ZR[#RE62DAG<N:L<*Z
M&6FM(7[AXJQ,,AIFV--$;N()(=(<*&G^?'OFMBF&KXGSKU(\9EFN,"MMRU3.
MI M<=M99VXT5DF*TL92"/(2]:*W<O<.G;H.YK*G[$F)^ 0[+G0";N'J"1V&"
MM78>VY![%%?/R]"XD_W]"1V[@SF@05=#\N_OQC^#F7R6JAA%@:)U.3+EQF"4
M%P03,A]<<#5.TV&./CUQF7AX"# 08+@3SO1!8% [99;.,-6*/FLMXT5V6^#U
M=@,! R13'),,QZ/7WML:A%#97-[@.-F?FJD8'FJ#7X@5J/ KV'S@_!5&Q_C8
M'CC+LQ0/#K+IA@Q-QF@!;P@_#[H=?4/<1\3@) ;GU[.J5_SC=1\3]I"9]D6\
M_"3'+[C-]U=L+KF>Q!ZU+*6U44V?5;(-;M1OI&H3:+3B*K T#8W6Y.EY]J0\
M"(&"[PX%7Q(JNRD4)"=Z:UHR=46,@%8)Y&=2>I;%4  I5RQ!A6/LQ=-2[]Y_
M59L#VZ]Y;Z!AOPE5"KS%>0?L*?!C^ WR^+]]:.\ %D?H>P94W5%3LPKM\D9H
M->EHR>7LA1#G)097FXTE(+V*DJ(C!#T(>GS"3MVOK%2V<W^%;+ $I@>(Z^7+
MQ-^R56!'_(M_TO-UR+$,30W]B\+_ C:@7X,%7S=$WYY6[(&BZ>/$&491UEH-
M.@XF!K6H%F=5:RCVZ1QD%+B>:XR+A^,TJ>%! (0 R$,[BMZ#("]Z?%9MIIBL
M5>JLJ%%"*I-3:]JT@:$$'R(4OWS8Z=W[>_X[?/:&%4"+!:YQ0X5?5H$;4F1G
M$IJCP[952-V&FY!U\!"AX5ABHR\4P=.OF1[Z?'>%93K__<^0U%,)%/,+^A@2
MP^_1^!T$D33$D/H.0E(;T0'JD>^(/Z!(^@ AM0."G$%LRNQ;509$ZV*W5QE.
M6LN44_8:$H.+V";";"(>YJ@;'MM(9(@ "P&6KZ=]5P>64D?IY)/J*D<M4JM1
M=L&P0U/$P(*H8"*<C%/A9/0T%>!>'7)OXWX>'%5T4M(+O$_5G!WU@Y?=B/D%
M"TGN@>9]K?'YJ;FLQ,[^+";W1K3-'"'",[Q]T09?"Y'"I,]Y%9U)KRW+J4VB
M^75#BN*BO'288^@PDSQE="0%BR &08P@4[2;(4:W%LE-S;21%DOSF&*)?&/H
MN#Q"#.RUXZ)LF(L]=J;6=3QWQ$,7-.IV.H;W%6T)]AB_:)<'6"M\6X?@N5Q]
MLUG*3LQF6>B:.3'?7>=EL;5"+854D0LG.2X<O67L-_ 01S"+8-9WQ*R@^!K/
M8!;MQ#QM-6W/Q&ZO+GOU]9AO1C!F(;(:#T<A6SUGWP;5KW@/J!2X$0@VQ)"3
M>3ZGB'*0AX"XPH@8/(X8/+9_!Y&1T,BP5KMSOC5\_"=Q[01:OP9K?7VSHC)^
M=Z_6:>(-(,O\?I9YL.S'5VLH>K8R09O/K5%(0<T<P8:Z^$\5S"U'<XF-2,CQ
M(Y+CX,6';UCMIRYOT$'-3MOBE86GV2#]).M.;93Q1?V,/\VK=>.6EG&:@M8:
M\RNMF.DDLPTIZI>*#K,OG.%,TD4(##P&##S"(<ZOE@.$K\-I("'70ED,<]CZ
M33@T-V33Q=7\ ,2,.0*0?6T_Q[4]'P,U$]TQMH%#BM8$B3P$:X5],\O@3JG"
M/@)WPA;J.TRH(T3@3578X\$9Q@![Q/4;HU9*C%0F;G*=G/*6P4M1UD\PC24A
M8Z!OF6 :>/0@<$#@X)X"\K\%!X/)J-A:MOL172LN+%=?46XGOT)PX._Y9A+A
MZ)F:5._*'GUME03 S6);<%FJNP@"/IT"[>;!5I>_A><AG2P/9BY]HP*G#Y8'
MN9>_+!2_%D2HVN@]&,85>B5NG:6 /G,B,U"+E(J*UY"BN&AQC VS'*F 0R2:
M2/2GDI+?DNAQTJA/[+Q7HV2W&N-2+3%3LK%$<ZBN ?>;.X_?2$B"1<J/0T&P
MXQ%\A(-E&"C308/3; /'1>X>'OZV_CZ^GL>WUH(_*$&T\KZ<(:E D\I@+!N"
MZ<+QY]>:(Z%@CX0%M&"JGN.BHP,+IE(!LR&PI>)(6?4W*4'6:XEV=ET!67M9
MN83 6V!;JNQ,7K4(]QYDV2CLD*)@MKRAHZF:_,+QA<JZ,YP8[8A$U>Q\R;1&
MV>5 X:4HKE1\\+&3O24$=@CL!,JY]'[<*2Q2T9JFV%D=:-4" (5I,R*NKN:.
M^@#X5,<+B:MR\9@HS_.K='/H]3/(HHO[_.\-8>V'\$J]D?'5A6::>*@>H?Y#
M\$<H\'4C@LO[ZL!6NC(4V[1ESRW_(3L$CFP&6DZ8)!(ZP]1HUABE^';S$@+?
MDOEMD_-.LI2DND)M(Z:4N-Q))LL0?!.?POR^M701_+E[_ DP ;P 0)5*<9BG
M,J"D<Z-2,EVVQK1RQ02%#Z!0JDN#M0/JJMY=#:N#4=/-UJ0Q0B%( 9/7(( !
MS_IZ7TE"LNOI/I.^"-@_6+6'S\?_+RE14]CCS;-R#R\6*<MP3C,Q%EMU<2/'
MI!JW$JNY,B]%<:'J:#@9BX5C+,DZ(W@4Z$$C>/3U@>7KX!'@C/*FTM@,](6K
M1K*2$O?FVS'"(Y3V1H=I.AF.L^R5"69 A>>$7Y+*-,'ED,$:L$?;;H2'X%UP
M^M5C0KQF1"X>6"X>VXWS:^V:D6;*ID*\.('6P,%:7]]LKPZI74.6^;==YL$R
M.5\]Y%Q#%KJI.J&YK*EH[[IBS6867-D3V083J &!_:@[J^Y C3V0, =)<N_<
MW;\/W=9&!_%-8ZEMN9:BG_&D%=NEVC:3DUV]U)G%C'9[O*6G8RG&(,\^&Z99
M.LQQ<5*!AD@RD>0OV1;^9DFVDTFK42KELU37=@?)?'0Z9CL\DF0.2W(T&HXS
M%R7Y[HWU4\HRMW?GI]^&M03>\K@#(A.L)?3-#)7'HSOUO<1CG.1-U?\ F IX
M"3F5Y:H\3'*B(:39F#E/.!'/8QI2+(IKZM!ABKX8223>"P(*!!0"S9P^  J]
M332O]*6!*7(>GTB9/6X5[Z\0*/@I!LGDM?-7 T6<7MJP1#P^CV@G!E\K?$/[
M\K.J$%8TT[+A]+6.+*1S!]5&1^EZ(QV+46 >DP5EEE)7*0B(N%8Q%TN&$PE2
MJ9C(_Z/*_U4J%<_@ !G@SBK7-,'\:"<S)%$ S.2A 8Z=*XA$?1^O"K&(B$5T
M5[K^J)K7DS371LV#+#\WD"ZE7L]+L2:5[-;7^DR,-.NN5V.$"B_%_ +$7#B>
M3!)G"8$& @UWXBRY(C3H;&GIJ6ZY+ #*[M*RY\[3R3&"AGTQXM_SF+R1/7UE
MR9=](6(;*$!;0F:$\T+!&MB*YO,G3)5"UIP4)B;6T2-;1P]#F##LU7QY%7:"
MK)Y!/]ZK\@.QK3>%]$(4U$DCP45'*RF&RQC3\3#%GA(CXATA\D_D/]BLZ*WR
MGYZNN%H[(?6H5B];2$3X27(6:R#Y1^R'"M,<_0VK'MN:J6ASV8",:+[S.(?@
M:C L<QQQ@3V#$S2\WB&8Q#PD90)(F8 '\%@U#VA1&Y4A5K0A5&0@4IS!W61M
M/1QND]6%D.;2B7F$G](<PEU<Z3B6A&8G<4@1Q GTH!'$^7K*]P[$V=+T0DJL
M0$H'/7LH:;&$!C@>(0YD>E$FS,4NED)Z!$?7^ZK;G=L7';KJQNAO#1]?77;T
MTR,"!!6_N'Q<=B_0;RP?MRE:5F70&.@+,YVM4M&\T5^-I5C"WV26X)@P%3VU
MCDGR$($' @]!)DW7@8=$O*_4AW2!%FJY45F:U^><D&T@>/!WKG')<)+A/H52
M!<M[]BK+^A/.BPUD!_P%:9;_&^);F'SAL^31+^AX^24<<M/]9L5H F+Z/A*T
M?O-<C-N2+02EZ/_"D\ V 3KM1W&!BK[@3?7Y!T=7UN'H61![?13(['!!6"N&
MAR8%_C*1S3%HRBX01B.@N)<0.:]EI%8F*D4I;6(.>AN/'M8\:.'B>K],.!&C
MPG3\XK'2Q*U&L.6>L>7! IJ?#BV_(LI*M3*)JF*7J8@Q&BP]VUE/N3%"%)P;
M1L78,$=_2H TJ'PN_1)I"\EN: C@0TWD0;-&H3F>#^(_NY?\D6]4A>7FL,D[
M4FUTC),;)VLELUU]*49ZD8%B+L:@(7P-!3L7G%QK=L-.5@9Z>MSH;\?;W#8G
MC"66PL'):#B>C(5IEIQO3P2;"/:Q8--)*5>O*<..R,FBW!]L+*70B SKC: (
M-L-$.OFE.6$%.;]L)*,),S'I-9!@0SX38\)4')*:Q*F)]/ 97U?E.*%(2-4<
MM$PTTP-JR((?R[O,>>+)>B1K,_B#\BVMU"#3+6B0^@9H1G/FEB,;.3@O<WA'
MY@@R:@?$.'=.=:5CEF,1J:JG^T*FW*Q.B[TB+[$T3MEG(36+WI":$0$CJ$-0
MY]ZXX.^C3F]8[S9ZZ9XA+HK-;*]AST:I$D8=2!T343K,)DZ#G=_($58&CO/S
MY1@FHHH ?O[9)#%8,'0']:KN*^4WV -*,EM^I:*T5$YGZJ/U>J3HI<HH6<ZP
M?*(WO5<J:BT[PK GK2UAMI6W11 I2\M40V)Q'?8X2X6IV,7=\P_E)@RV+!)P
M(^!V8W![,#O;2XBK-5_M9D2@#,QT!GAZS,;@QKUL9[\KO>^;N4J?\=_OY0H-
M-I2];?M;%(*;:GFHAEX \J___8E;V#Z_YP%R9 2+LY[!:<VFUK5UJ]D2Y<Y4
M["<JKI!R>(G%A?!C5#C*)FY;QH2@#T$?@C[?@52>09_IG#7HALZ4Q(@X=J?K
M.@<'O8'0AWMCKLP]N$9_)^1P0A,_"U8"-R1W@,/!&K!'*TCU92>:$T<;$2,B
M1K\])EA5_\=%!69OT(VIY[C::',\<K^TW/_FX&UDWM[\JS=6 >ALG>=M;4]
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
ME<]]JL]#!1S@*-D1)5#M*96/$SS!:(BG& >3>+WL)N_9D(KK*/_)2YQ73UA
MT3M.K3EWX1->.?9)IM6';#<_U^J06/\4:[D'*EOT0,FVW3E,^_<L.2?N3=_I
MAIU+4UCS$4R^5Z?PXI0>S9MG-!)>)K*#9@915<:D\=A2QJB( ]G:R*ST4S/1
M@GD.4?J04^:QRP;S<C2$TXGS<YT_;M_"F;V6!_R"Q7Y"MWOET@^>X6_<,MGQ
M(!UOGV,"7Q7:.\(W[G%O8T'\B6](YH8E:BEA8UVA*&><DQ+I*C-^_ UE>H!1
M\XW6XH1,7\S6=KC.U,;C%\S"[WY-_/AMT$U4U_U\6Y)UINI6RL-,8=$;A6 ;
M9%=4/9VG<5F0N%*3Z0Y6?'F^?N&B^B@[Q--\SMH\Z(WC>-*5,P>V/U)A4">>
MJ<GCRI*@S.Q:;520E_<G828I%$[NSPHZJ;.JC!&I?%H@B()K#D6G*^>YCP6=
MOK@\'SLJSX\A3OMG%^R'()*E(>,&FA=GU@:T,L FD0/&T8/1>F,C+S!6O S3
M?48\2L3R.-:O&,Y>$NKA59YM-%1BZ$^G=?>^Z8.*B8(+I@O#!U73^)=/8'P3
M:;1_^NBRMQCJ+? +P(RACIY4R.RMG,!L\CS"?6JLYUX>V]5'A96PC/0L&NE9
M_\>#&BK0V$&3ZSF;Q]G;1V;ON4N$7OWB;!]TTMX>M@_LKU?MK6.;]OB+"Z"K
MT-0B^\YW9="&4+Q2I+M;BD]GQK2B@@=X7B)X$\3J\&M_/(=@ 8O9@#L))O?,
MG3^=0&0ZGGB2^^HJ.*5PZ8*VQT3,?MTQ+-Q%Y1.P:F(;)$C"+QO0+$<E>4%%
MQG$9AE>W@AZG&9#KV@ZDX>#=2NL]!(@'P!'W#R=O"4_^;D-8+VD<  YO?/@+
M:&2 ?FZ10^=Y/4C.]M BL/GIB3:$M30KK]+%-H_&*:FJKR&.$\$]BG+40W]T
ME[&8/5\Q$C%SGQ)^(BUGU-M@@#-4TAXX?^<R=!#A@Y]V3>_%_=>B$A3@(4CZ
MM16YE)1@'CSZY"#S%1;9(:>*>)^?"7I_X3WNHU&O&@.(W_O@A+U3:IY=X"61
MF)_8^OU\*^8HP8,12>RV*;*/MZE'6-9>LM2B(BQ;M-1Z7B[<A?CAR/KM;>HI
MBZ67F5:>TUOLW%X8="Z9)%Y*TKVK:_6'.^!;>%9V65<6=27/8J5EJ3VV4G79
MI4*0 EP2.56LC.<KK&2,GX>=OKMTW)=2@#_B69W$GX R]XV&MWVIRS+JCWE1
M1QX8.)[_^UX(1=<W[>,WFFGONFIY.EOQ2WHH;9)Y83DG3]1-@O[ )4Z U'!
M "J#DVB_EYAC?+UU6V7UU&R(N<.%KL_:J7EE-P9;Z>GR^B8&?*49^,$[JL]Q
M4SQ N,OK=V3W05?@$Z8GV M>1-FK,0\.9&=B*>!8AE!P0<G(R8'Z,$_O2'[0
M8&'A+)@;.!>^$P)W\]Y&?R']+_Y"N?RYE_,G00J$9?.H_,_'"1J]G2;=S&J^
MX34[+0R%<C69S3PT/]HI%"5@#A4E3!J74ODITYIWN^OKV:-/L:)Z714'((F!
M%7OE4N/(M#PV=8&MCHQ=3]X4CYP<?-WP;63/'O?"#FAQ3P^#N;3UD*PN,W%\
M#$;@<YRI!.58*7B^X%Q"5L+91K5?DI#W'#"7V@1\Z=8GR]FM<!BV^*S8:ED[
MG19YB='Q-/Z<-C+<A[?X^5%R=>\.Y\5^FNR/'5UAMCO;V-JK*@8SSN.I)!TG
M\,O@G > @E*6@R5WC0-8SB6JT%":>4!KT>)]?/'.<;:J"M1*'D#-JPN[U;.C
MYG;=2.KSYP[&:Z6B6,3A#0[%QEDV>;FL)XBPI['Y$\31(.;P%.. \D QCDOE
M(*.8H@?_= B=! AR 0R&<?5,A)@9YDP;!=A)$'7C"$L$_/4K,_6^UAYX(>G_
M^YH"\.CLPO7/F!88$7K@#86MOVFF\&J[Z@IS*E6OJ]GG%DD_M)0DGTSE*5-I
M5K&,J*]V8HLLL%WN)L9 G6]F'F8+O&4 ?/#8?V&CA_C$O_-.[LP%AI"30P5S
M1TY*L9\U+5?]\$Y^UYE?F<B;U6J;TX52OJJ9 J\/9RZLYXN3!!:G<.;E,W^/
M(7*&&?+M443("$4D0A'Y+(J(A&1+9$= &DF<%8E44A4I%:=$"<>&(HLGATE6
M98;22/K+>ZNT)Y#IL XN]M@,EMF5NX1=)GKIZ1H>N.<M96N1;77*RSGO#IIB
M8DPW-'T\%HG+EA2/]15S3.)Z?D1ON4U?M3/*&K2DSUORSZJS&BQ6C"!)VF8D
M[Z;;9&$MDB)VWG+GLAB6GF .7]*+2:E(JW1KW@ M+][>T6J%\AJ;B$)M-5QL
M-[E</M<9@Y87;]_(RP4AT_*8=QE3K5AX:3ZDUB)U^?:*6.@QY296QY;%5":C
M%*N[P;HATI<MZ09K/U,5LH0I8JE6*13[[6I_+#*7+?.*RRVQP3"++<=*I[;5
M-R0E<B)[V3(U&EB;<7U7$%JK&;==YIP98S= RXNQ-S26-X1^*BTP=:V3UN7J
ME%V.0<O3L8N%F9Y*801&)UG_#Q\'HJ$^!$1#?PJ(YHN@9<YC<-_7L_Q61L*G
M?<O-MC!P<W9BA4DZUQ D8H&-Q_#R(D[39#R9_#/O$IJY#W<N+RV:NV/]&RO@
M4,)QOH2E;=#+3GG7HG:"I"E.#G,FK=J."R,Z]F$L/A3VW68/N6X92T.;(&=:
M31_^'=W!!9W@$-/$T09N)H>]:7ZXQ?@M;[,;KDBS]FQ\TF]((6"=EK*.3,7#
MJ5<V0,PU""YZ!(\//2\797+ML;L/Z*?0?CXD<"S@ FN'+"\-O5;Q$+0ABYU]
MY+<1V/\$[58F>ICM@%UQQN+C$<<\7=!1W7W;0NXGQ[_U/9KQ?>3XY";T +C
M$IV1L.1:?&UF5=8I<DAM6^M3+$;7]K.S%/2* )0*%EQX(.1P+H(:D&#5-(]U
M"*+3HEFZ7$5O?N&L @>6?F%RKRX,3"5[><&A>_3F@L.4O/TVFBN*?_7J[U\T
MFH.& E-VN:#MLSL[G^O@4DN:1D ?<0@F7,2?]J,-1NJGY\#-!:Q?M(_!'@0'
M%CS-K.UUWH%O53-[5TU4@W/V.B."IK38';T$UE]F"_24[I;6^N8AM"QO:7$T
MF!-& P%AFZ+[6\6:(_V5Z2;2TD2:2[9_QNXIMPZ%1\@B0B+14M9 0L9P"^_M
M(_@4N*O]Q\3^ 1]$8/_NME"TB\#__4\HJK8+P6YC:_0LE)(&)2X--W-!@T5M
M(\4&(_5Y"A!Y6?RH=U>JS?>QJP/^N??T&0SRHHOK?:Z6]X>19GMT7/ 5]A8(
M#"QI0^M1M\P5A,,'CRS:,Y3K=S2HN*<C)%@=YH-1>^5C[\<T&$LSL;XJ:_)R
MU.\(DMG.$@UEX;;5]:VYG!+,>V.F7F2TZ<]JVVRB.?4^K:EHV<M@+M-;+T4(
M?9 ]FL,6FL*K60U<;H 5>2/!\ENA-&E9YJ NY" T"'G%NO2S&F)@CF8>]G:P
MU$@C'NT"<(@$W$\$AK&GZ/PH6=B<*2CUV5Y [&[H;00Y"PHPE@U%\8@(KI#'
M^=QMFH&R,%_>9&A[H0T59*>B4MAC>BJ$00X1RA4?V2>@HH#$'! :',II B43
M#B5;.^(+,2UMC'#2#TX4XMKP%?Z1O 1RZI?8>9V'+_6YB%#JJWFD [Q>!65P
MH[,JB3L[8!\JBSCB%.,/BU:&2\89HTJP8- J]#VK9G&B3_.UGJO/*Q3)9_.I
MK4*N/YV^<W0.7-W=S\^ZJ"UQ A-:.4H7K;5@M/NWYW5[T8F]RQQ2AE[J+!FR
MIA.;1+ZR'H_&3F)\MSGL;#KKMMR<-_5\L:AC&WJL4JB@Y.GRJN5EE7%Z3_$"
M7"W*F';G$&@?[GM/'/WD:$\YV(HO0%"'?*E@X&(YDZVKFXTJZZ6*FBIG:2[9
MFWY^WH^&RAV-M*:B!<DJJ@*U&^+NNYZ/-F@(=3?CEO@,EWAV,X72>--!^6B7
M0$.'90 S?7<-LK5S9BK7U5="HI<8R,9RK#3XQTW49$W9=5SJ#;&$O1MR>:XE
M;=,PC')E W]LOUZ4VQWO6$2R82M7=^[=TC9OQ*WY'HUQLA3[59@ LU>Y#JNP
M$FIB1Y_M.(AOR2ZQW$YOT./0DVS>92YZ"^=9W;4T04A4%MN4WC#+(PWF [&I
M. EOR=Y4K.HGJ6PBU_(=(4+9G"MM:?.B;]DM-0J%R7"JSWOY3B)':=O6K!%&
MW](;2LR1-HKO6YZPJ'@!GD/]CG;4'-BH&JJV\4O,E*/@;9!> "44;#EDYG@%
M@-I(DV"RE\_/X00,8"<$8'LT[5@@*_"5+U.%09Z];7P?BD.QF ,>?I"[ 9X
M@SJH7!!A1Y]Q.A_8(.T3.LA#_,@.S+5+M$](*;.OHKM.!^BG>I_2U\%>#5']
MYQ'S$'063)^,"'4;S(#FOQ2,:@W4G?VNN4%3XO-ACOSB*,7PBO?@MSP2H^-*
M6$1E@RH<I V:&'_)CYG#/6VRYRSU^-;VL:F3>83O/W[\@:H5>E%6#'3:F2D>
M2Q2L;U2\*X/1.X:&& :/>%7WP_&)SOQ=H!FG0P@\?J\,V'.Q_/@FG!BTNO!:
M IS6,8_J#QWW$'E&0O7!J-P-QACV1;<^EYN7.73><93+LV>I]0SY".+N'1Q
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
MZQ"?'P $_5*FR^L>P!&;5P!T>'S(0C4%>=Z0V0QZ$-C3=N M[#$]@T-[K^_
MR0M106T/[?B<[6C_=<T^$)![%#2:L3+!R3[R[6AW 6;>^Q*RIR&N,)1&&V(;
M0\7O,=%YF,:(J4V1Y,F17?X4XV9[Q>L]*&"A04;X45,@K0GTPZ'%*5D/I&-3
M?#L-OM%GC4**P<,:17WW*:3 ',!3 1PP")YTI$'G!$*06I>@J]!?T)#)<M1/
M./_'G35&UQ;,=Z\"T%1SCU1]VF\I=M[-+P.S/-^!_ZM=43N^_WQ>>J1]&23S
M'WC*!^<S8:[A1MZ3=IDO^K_P24=L70];C%HFX??,=YHA8R!8@?W@#FQJG.M,
M3$MSML$W]K1IW)XV#?)@74R'ZWA(]]X.'D.?V[3 KV/%D+?Q !X?N.C2&/CF
MZ'+2$SSP8#1]KF4<YA2AZT,&JZ"'H.,+&*GT@+!//'C3=:"G@HZLHR#"$>[K
M2<@!A@$>MA+'&\Y68(S@:"' P(X)ZYP),*'&$Z0SYM+46Q5OLO?, ]MC+KKK
MLWQ#OKR 5^RE93KJ,.AG;*$M%,0EYE/:(>*RET-+CNE:&HS8');:1X#VY EV
M\)02[^F8@@UX"B;,#1@=-HT$G@4\< >J8=NT$!1_6@/GD+;O:X 9%,.3<=^Y
M],8(]BW"6!_ME3 $Z+\K ]-['*G,$=$P#R&PP30=D6L=_16MMC\YOJ<%'[!/
M%<@KYMB2%A-X>'E/0%#S6S'=$MM3OFR3R_)&+SF-:K>;F9:%X<VCU1[I\[,H
MK;JUK*%GFK3FS*JY&B=R,!V C0.7X44BF!BB.SRE@(GY["]8*.3[_I;$D>[X
M1G;$1P+J^Y(>.*"7<U0?;SIXIRKX/_AV_)32$;P:J%HH<G'84G9]^D@X)!@W
M=BS74Q][3'VX[">THYJA6I+7$%&_[)47:),Q Y4%OZ_8;T7E3PA$ Q*76!J<
M+IH]B74T.."@;2CD""EV;V9!YX>N-H.#0*=G?,^$X5-FPIFV]R288,J4]?[0
M\WZR%!?>.UR?4)\C?C8+"./_O_\B4\?T!2BD+Z..H?/).KT047R-')N9,CH[
M_!40GEIAF,KX?J"<8BF;.'3-)']PGMF[4.!Q# F+]K(&YFSOTSG =D*4,@GD
MT$-+!!WMWO1[%K2#B J!6 <\1(=C'L@".")E;>&?^)HQ<J$E(07>D/\$R% =
M:P$;!YR@T%28P4V U@3U^Y)5 BT+G.3#VH1AOO=&A'TJZ&BJSXH5/:?<EVC4
M NZ_N'?IMG_,_)H*]+Z*IB84HSXZ>$X"4,=) RKZ'_CB?@RFQW5^,5'P0W]?
M0GZ2?_G;]70F]B??";:?QUX+@QH'=B[-6+A.0/KN,4B=\>O^P].F^YL%H$],
M2S_$(A!M],BS*KVH%G*A4/!7 ?,T1X+A\]XZ:$?.%(_-Q S(J^!.!Q8ZO*\P
M(?T5.+^!^E41!1<<L/\RQ-!D#L$:^#QDDF]P!X\9@A>>\J<$9"Q06EYC<3F/
MZCRA>!\BV-[/!^22\AB)XT=TQ(BNUZ<)6TC;0,R!3Q*L O"(3X,J'D\'[*!F
M!W,/IA[23T$:, ,\74=T4K9I@.=!WJD%,.W0HX,IM8-A!#O&.S_M"WT#VZPD
M2S-=,%D..A \;BTS("8.^,8U^V0[Q$\,(;B+K9%]\KJCG0TF4X5,3)9/;>;O
M$M]CV9.5!^NLG,W(853>Q@'MT.V8/R!/F\(7^&PWDF5X-\XP] 5>:8P3,*06
MCZG:1H&-@2XY?JMF6GO="^89&1Q0C5_K(WR;NQAYO4',G8?>O7=</F4I%(9#
M(/#8=+5& <_TX;T.9)V&HJW"..'"U P'G9A08C5TE>=X\KS8W^N@37 F:L%K
M @HT3XR]F0Q$%4JA!8.5*'RX_ZKW*/EDYS_%BFI\/_##0+WM 57.Q5=@@H,"
M'K>?MW@@<' )C\B5P 2<*&W4Y?VS@/\$9>!\KQSM.H__#YR%ATD^WDTC;S->
M3/,^N(MBJ/O%!>>O!NT43Z=(Z,O _#&V1U_VR>J@V3,#OWA+)<&S%\RR$30X
MTAXGG';0)_85H)<EX6GI4X[#ZP\^>L[A&NWLVNS;7Z31T45:=)'VV8NTCU^0
M?>[**P276/>/I>SM\:/(Z4^)HM3WT\$'T^$-CM\H7N*/'0:_863ZF5(P)6B&
M2%B1*3?S@J^NX1G)R%9XP3Z&B_P/[9^>U7 (AZ$0.+PJ "NB&?ZVD+V<(6,,
M_@8>;QI'=+#(KE-\RMI_:)=/A"^Z7/8KF\4_?<\W"S +)I)WGI_O$O3L_7;<
MNQTO'8+WI@BL0UNRCDAFFTIP5,OHP=P(+C"4%>"WRI:&MM*>+;!<GW;F*ZM-
M\:Y3&F#V)I')<X]B"WRUZ HMGW5LO?KDT1G%<B3-.+@[^UPS[44N9=1J!;V/
MV3;(;X4K"N/28,U7T&E3H!EX9/8@2]V ZWQPRY 5=-B1Q[?NL ]H =Z;7W3K
MT_*311=>YH>8E"E"D5E2Q"0"$ZD4,113$DZ+N,S*4G*(XRE)\G- I""MG=P1
M0G^=8C."1LRE=9:UY]QD#/?U>4M:F\_PI(FU^&6KZ^R<02Z;;',B<=ER7!6;
M#K<HE?5\KR+S;+J C;0&:$F?MS13TS4WY3693\R2]8+ 5AN%64,$(SAO*<X4
MH3U-JA,LT]7JZ2I?'W;[$&SOHN5"QJ>%#ELG^5JF1908:ID@&PW0\J*?I*/6
MUU(]D^6U5"=MFPI17DW@,R_Z*=7$GK[IF7F]Q:FMWG0Y26<FG$A?OEWO3DJK
M(K.UA.YBM!D4&JRQJG(B<]F2',P3=&:V(WDM*W/]LJ*:5'DLLI<MFX-<H<>N
MBB6,,4I%01XD24E>BSAVV71MT\34'<L\SXQWI")439VD&R*.7S8=,SU\8#$%
M#M/6>&$ZR2>;I7H#ZK&+IBVBEUZ:\BR#+>5^8E=K83VE#C;)E74""FU. >N&
M$.;=!L$V\L^4L0!]O3)5,VXEE91TMH2!@[/=7&3X?JDTADTO5DH>X]I(:G77
M@D0;C<EVV]WB$FH:+-6]M75&LB><,8+_\$M7 X<G5$E9[T!UK2NDKBR?M$:Z
MW%@(I<3(F>77&8F1[J6F+Y3ORY8!"7Q*, HOS -_4 [C^4**UA?[@%Q7:*T
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
MP$V@"#'F)P%OW0F*,)*:.TM->(#H'LPZ&F8LPF@/?-<]\&=@A$SXLL]K"\4
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
MJ&'J.XDS$#/)9%#0ZL18*C(Y1!RJT7"$M*:UM-EN"KUTRC&#_7*X[^!QS)&
M(!S##9776TN*WY,4W]M$\KU64"K(39L\:A$1+"3\Z[79?RBI7B-N1=LSLS!=
MQPNVDN@$"XM."C?VQJ+A0)0_/G4DP$';<R+CQ=3J.H 0(3\1D7&.9&**&WJ!
M'YNL'V#0O@4'CJSF1#,)??9C&JLW+_J'=5+8RG"5%9*F%A(E42T_;+I.+[4$
MLXP&DLEH0 @=<]T/;)@OELK=J%CJ9XS%:EH)AQTMDUR7NTETUD X' U$$L>)
M3XJMOP>'?MN]82SC33C%TP3BA6QAKU>O8M0':E',N6Y**M V>VX6-%FUD07
MQ_@N1;/)H#(G[$TF?@ISD6V0!O0BK>KRU.5W_=YM/Z@O-MU'N3GKI.RE'4TY
MB9AK<;29E/7,<SU\+/2-(V 8<^@>P AY-1)^E#PZB#Z0O;D4/ &HY!LZIV_'
M_E[<[;!'_U'VWDE__HYT1I'AK_=DI<@Z(NT$S!E<$PQ:=S?;*>_&-UF?^6V?
M"QJX&83M>SRS3T9@_?C)W#9,6['PSV!UHS'P'NP*_,E0P461_O1-9:!(!LPK
M.*?A:C\M*FO#?PWXR%4+&0:XYDWJAOL+/4?@_\FT@[X_T@]#__P=H(Z/+W'%
MY6^_?%._R=QPJ9$M!;@Z-C: /M^T=HV6ZYE=2\B$M^+^"T?C/O7 /O.>9(2.
M:#*.'BC>@([</T,&=L9%^S=3--T ..!T1R.&.5;F[&4O1/V1I/8>EB5%7@RZ
MK::D-[)"E<SMQM!Y O6C%#9"%/6C##7@%].P>A6O [MM(B #E)"[0T0L96K-
MRBP2;:YKC7+]4;P79&=OSWTP]E+.4B>2@UJM@>D:)JF8,]U4S"P!3%(T5G.
MV?$'8F2E-0A9!D(!  6<7I)!6B>9?*])FLK=Y,Z9"J.0$=:FY>5\5@4VPQ]O
MK?68/ <"5.$?T GP]#6P%-8OF"IHQSB=]0P&N>N:NW /%+U/@*7+U$B!XH F
MT9HU+BU-)"X#SX,P- 4LS+5 5+@DR\PUD-7/E3F!5L$GH;$!_ @OY5@'X .T
M'?I-\*"Y3J-@]X_L*/V;=XPL&Z[32DCD%$*#0PMB'9,)U UEF+<K% @$\+)Z
M!MU>'DOH"B\TZ;'4*P8G\VJZ,>V*BVE<,#.U;/KNP7DN=H1_7V3#Z4YYY9!%
MHRK6.]9D8*>[&WVYQ_E"OU)&8Q"I,L2+0T]RFYE4B4JFXXR;=D^JCJ3'OA$;
M.WA[^<TQL^;&@".2P22+@$AYSMO&WP=D H3H(Q,O%6GK-MG4;]7*G;@HV'?I
M6M9ZK%53OQ>S/TAKG,5RNH%"36F#&D[?E6%;6M\2=0"?9W=SW4D0F-]61".T
M(#5>LNIZN5//-T,U"&F$T"F9>R@ _]\9*_*8352&#N0(#-8'[J'X/Z;K]ABJ
M,-??XCH9O*<K;OGBN[TQIP-(.@A8X-TXKYDF*H#KKZG P.XL@F:+N!?P =_>
M5$F?VDZ4"!_P-XT09NBF+2.XG(!9= 6J%G@QYE'@FT0#+,3NJ&2DF*KDA9YE
M//,!;!+A)QK8Z]M0@2A$!1_"!!=,T.[4;&#EE0&_S&UH4>8LC"0,+\3P+ "(
M E4V5L39L[U19;8?;X>&^&XH:$#05? 5(!@VV0"2#Q2=2\WZ"H@.@/W__8\0
M#O^#\\(3#(1]*^7C,SX*@VW7F^(C5X#&#"8P264MU6\8]RG;C#GA9P\WA1,<
MASVP[3DT/U,L.IMA<NJD+%#.*1B?BD*.,8ZE<7>V1N@'?JF#,L&DZ.S(*.%6
M@NA"\ F8%("+9PON^^9LMC_2P:?V,.#.*7L$?W&%B#.G7X4*4$ICKAM4F!*X
MC<.Y- +F )0:=28 4DIID:Y QTP)F*7^M/I3@]J.N.J,H!/:+JL"]13C:9Y6
M*JZ(;+-.F&.8KO"T%9@?.&ED$'K>"M4;M,P^H9@QT^&_.E(C: XO>F9DX2_E
M;_J@H]OJ8,L3Z!OI_(?_8]_:=H!E38>&/J,2TEED@5$":]+?6^ BF).E_FZ@
M\Q\P[[^4O?>C4Z*<,4W+W4L:0 T=#C[:(/)8PW4HSLVFF2!F;[R.8HUI;\AP
MR)(+7K^&B@$*15KY*YV[H8TI,*$SP,+ X,7D":1(>E%EO8EL[G)M7EGIRVG4
M$7JU<NH4?4JX4WWL95,]/E27QV1@JZ0RQ+H5:WT/$9P^*&A+8M(L^_&GA)3!
M,'=M4@O-$L\^Z])<R9+,TKOG@O0W&]FI:M-*R0YVQ%G!GG7W&%KX%QC:Z3YN
M!PKQA0R_@ZZW9"(H^-C$+2E,\^/V,LZ3Y<91JNOB4BT FT@F;XXW-OS+\Q="
M7XJ_@7G= $)S.=(W;$1MD'4"9LAV\%9G=YY#/.#.0&PZPL4$=)JWT;?0$Q*H
M[\0+J5U/6'<5DBF(07G<O]?N6AFK[/RN+N[=4)?.6*")$UI(K\NZAMTV@'&
M&-@CIW43'H]#G=@D0OAUY2XRM%JY62T)NN%OCE/\__*%USA_@=<S$&'P^KGG
MELIN;A$"ODGZ@5&>!T-9(H ^2(;ER2BUA^9^X/)SG]3# T[J%DIY.Y$@/=Y.
M$GUB.810@?N)@9?0F<T4".O91',0,^^2.Z*/ 6$3>2!YAD8[=^)K\'8#<\XF
MXOE@RU");!#+I4V86= 8F1UP.2";N&#GL4Q7*$T+D[08Y^[WLJ%,;)@;?+VK
M/S2\_K%E0;]4=OP238[&^$B) KO0 2^1V?6 30*$1MDO3T3\=917D!8V@+1L
M_<UF)PF7=VGB!,=@S[$G;Y5@ GP1V)0"L>3NEQ?A32]56->E;'4@*L98BW2'
MU>0Z7;V<#%.[F<\1[3&^;DJ]EMH?*FIHW']9ALG<II@ ?RP'V!:2'?.[CRB<
M4-4[*XFJ!$^*J0P?:/=VBLIA%^F'/B[P4X7>-:KS5<0N-YM$,HU15DB75H^C
MRU%H)SB.=?F'S'0:[%?S;<G./_0SHV\_HK^@SY/K2/\>*,L?_X'_> @OJT0R
ML(!I_,]^$4D80=HM7^+Y?[U)$9),R:TW*P@1K_YJF[J/)M@H:*_I?__[O_R]
MWY6(!V5=U8WO7B65;UACMM0BT**J$0GV#2)-@](0WOQ=4AUI;7HEQLF;;9'6
M]VTQ5IBM)MR$H__B?#^C/(Z$.9-609_(W!JNH$J&UG?W:]YGM/YJ^R%8#"KS
MNT$P:; DV/I>NU0SEC[_+H1N8KB2![^Z XN$;N+1-]+5P:)*>*>9_TC<V$#?
M_9]&)7.PF.A;&M+0A=2]-2_WHV\_&C1Q#&B"LQ([N]I=:91^^-3^E+'NB_J4
M!,'VW;4S-Q/SW-J@M^;W"RN$PEOXQ$FJQ,+.[?3YDB0\XKG+"@+';,1E%2:!
M<0P8YE\VSM=I3W\9Z(W;S3"V=$:&J$13'2W2+"GZX(* _CZ<4KOQQ6.CF5?$
M:%%R4O7(XM> GK$[-E6[BMQF@K?!.P3RJ%ZPB9>LX;\%5_+). AF]WU@&PY
M+?#A_4P[] I#XC:FO?T51/?@%VF284D@,O"GUC6KENP.M*587*^-<'KPD+G/
M@0S#,6X&HQN;A[,@JPZBZ59:8N@O%#KM&2<%"AS^SE8Q=A8B)RCVT*:K;D=4
M>\NE<975+=%CB>1M6GGKYW2I!14-,O'YXV4KK^8.N*&S6@V\V>K>':BWMRCE
MCM!?\"B6)25J6$FQO4@L4\.Z7JBL'5!CG*/%-$=:-"%PLE"!-&1F"]HLA^X%
M8;O$FIL!\7G)#9=BJ2^B#;P_N\_C B@=26!_]?L));$\W5A:$K 0""KI\N.0
M&#1YHG,0*)ZP#C0IS)J#K*"S8$4@15HLY$:&<QP;,?TY[ 2VIF@0,7KI2%.&
M'M/0D9HI*REB]9RZ0XU''DO:B#5#$]ML"5>".6C(#6SB320'CY$5^X"CANJ%
MVG-BZ@',1-(L"?T;NV%TSX%DW?0*2+&6%__.!*3+LFWL=.4F1T^)!:9!)KKM
M<P=O<%=*WC,]\CO54N^61F$6D@RXY60(- :1"= @S(<#7J+6_1F2$OUHFQO9
M*B4+?BM;H.\\ ;O'[.\0[7>+BJ?_7G]H<-#<C,Z"K"9X3ZO,_-D[*1QB\G7
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
MI8?DOD-?MXLK<>&XX^X:P_;*JW-WFWZD8'1@?0_'CM<BZ'I$C(U#>5KZWWZ
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
M.[T<Z)+-H'E77;;6S7RIK*RUH-WK9"'6C;#]Y.%$(A .1Z[9KRL$7"'@0^V
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
M--F@YT2!(&$R,'0'>\UZ#*P K'0FN5N6O+&=&GL??@/]:] >(SG4!CQQ>0;
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
M]\SF(&LWDW8V^ZB/?OS-/Q"[<--V!'_'T*M/H6P1<R[OQ)N\I1L*7U"VCP/
MYU<V<3SCM%*)(>2JD\A,])S,676H;/0#\YFRW2JU^_N]/); ! EWZ6?BNQ8G
ML".V&*7F;=V9@J:O^6 *;#^I69JM@^88 %^R!Q(<$E(IS4('5);C!2[PDNLW
MZ4'>)X=8TLKPGE_7!"/TFL,MRV#:!Q#[RBDR#5):5DDUR$(_'=1F4W/Y':C;
M)0([P7JMB3E-$'9?(LIZ1X"H"]7@S"8.5K$HNOWX#L<)C*@((\V"'FMJLF(2
M9DH3YOI$[-.%:?T[D(:=ZS7Q*=$FB+FZ8%TVVZJ8LQ!IR-/9=U&)PERJ*,]]
MC1D'::)YLQT'/W#P(RI"?,JX?I1MM>\\\0Z#$('MQV!S@(^Z[R($<6]'W;B
M'':+\6DX/@W'CA9VM+XIMO39K8Y9X *5-=9/S%,ATR&,E;,PV26E-BK2EZ^#
M<7_,#_(N")3>VH8-:!K6@*N_OB6;H)XO=5A)*>%JXL*0F^M6C9'Y&5$5)97B
MPDH%#\1^)>=_W(1_&<,.YG4[F-^MO+]R)^N[E==/N0J5)TLD453JZ\ZT,F'*
MVA(I+RI@\$#N7\;ZQXVYWOAD_O+W+Z+H)5]^5B+I77^_Q1/A([B/#OLOA^<3
MJ3H7LCQ)$=E"EL_R[3QOI2">AW2.S //G]$8PPI\!>&/R\]*),,FWV\+1AC6
M/LHLN!RL$<D<-^H_CBMRMLN,9X5'?QQ,ZPC6N#"M=+_(UGLS]=^^UK? W^_S
M$TXO6I/ \XWA^K4TO].ZS5^>B<"H7]>\CQ-7TL%F"552W6Z;+>?U)@K$CK9R
M4X^:N5Z+BU7&;R_EYFB/1BLLT.%X?@M-5@L^/&DYNKE=AKX:B&J]D_*F),$I
M!;!J-<9@0L/]#L 5FZ&3*S< YU#7@W/:&@,X!=.98T.A">DZ-Y<V==C_V!*X
M(*9Y4$HMRUEZ/\/I"T5@U[<M78@.&V@S#_S<_?"Z&QQ\T7A3BV.JK1+AA-L[
MW$A88.C_U +?V7T0HLKFDRV ;=J\0K1M&_3)%@X)XA](0'QWU['M"\F-X/RB
M:R5\$@X9&(L#SW?@,X=P?G9"M_L]@?#Z9]\%FIE8PGGZ"X)-"$,_76!!.5N
M=\_<RG+XXEU3K>\Y5N"#=P.]W!;W&SL<'-KSOU]T^/"R1'!9R <:KTL4UP7J
MR]&H(%Z82RD,<_2H#*\+!C*\+AC(OFMA?O?HX3/[^&*3('Q7W.432_3+$R"\
M==F0)P_<XS-RK.CAZ[25MRDL_;>S ?TV-$7_]X/]\:<S(T:-K/^KD]<%FAN3
M[0$8Q-) #X,ZF]FCR?BA:<3:%#5M^A.)^'A*]D3D-^?H6<>H/]4QDGX0^)O2
M,116.U$]UL^,ZXM+$Q:74X@+<0K0C=AQTKOLB3#X>II$B>B-]1+Y7G3TIN$D
M+-X;]RCJAX"G)NG^TU.:4Q1_0\<Z!RBY'^M/&I?SDUE%2_*M1K^2RS0G2Y5&
M^0(<R\5)FC@/CS]S#8E0N[>DX*CZK@&?F@/6 J"1HC=HMI?8O@;C <:#+^,!
M\08/"/6)R:KMA);7E0#T;$;61H"VI;/BP4P/-+DT 44Y\2@E>-](=#RV#O&
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
MVOQG1ORUK[MX8^M.W"]DOTFC1KV/6(;@!V%>%U?].^WEBA#+HT5?]<>9?[/
M!2IKK)^8IT*F0Q@K9V&R2TIM5*139PLSOY'Z]RLG,M*N]F=S)_)O&C^G"2:H
ME[*]&9NKK?E'0'2:E:S=D><);UU7P\,QBGP@CA6Y^N(.%S'%^<>9MKI[5XO?
MSXB-@%H4LJ YU\J]FCGMM,Q"\]%<$SY*[V#.J!94%+?0?WS)'KADST/F''2D
M"[QXS 8^.OO=60";@]UK<-*^E9OZ^*G.+:+3Y3?MPP1/P#L$2X0V=JE2,KLT
MB\J,' ^F>K4 4+UNM%L_\,<*/T37';W4SGQ?@G[Y;?AW!)T;S_R6P-5(DPI*
M Z*>F+<&<Y0N#?=?YJS;[_7NM1$S'"JPJ;8*<X:&&PJVF!$N^JUZWB</CD;+
M<]@;[R]?O[WBS7E+'OBF1=J 7T0UFPSTS'WL$E79G#ZQA$!,W5S:%9>VWEF,
M-LG9#/U <V>YH8M]ZGO2C,OOYG^B&;5&JDJJ^JQ---MNSR697E.7T+4%N*N3
M_,-Q4H\[=JL_&V$$G.T&\(#FZN/8_].FL[^@W"V Y<RF4!;"I&H])'W!_G;$
M_.V[W--?.(AV0GL(JWRCO@!E:M22.==I"]5<-MLFT$5(N(OS#_1^^=;3;>(W
MN&/?F9!??GO^-2%_'%0KK995TI4IR_9F(VU(#E4DY&A#)A_X<U4_NO1N=5..
M=@U N;'13@OG>^IA]QJ[UY?<BO6E[OP21#W+;1Z)[3[MU>MPH&$[(WXPX8DI
M4*=U4!>**P/=.(:;,?= 88\:>]31W++/H0RZ%21F2J)7,^'TN9XT\^;]%BH
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
ML::?1-.)UYI.J VB(]+K>8%5$A4F7?&ULLIRYP]=.JE$30H:BZ*9$/0FJ61
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
M[[<]L\6DFVEKGDZ1GEUWX87 DU:R\\R<P(<B$$.=[D7=$WVOYF5ZL^RI:X2
MK =RZ'?$QWGO*/G*- D,&A@T,&A@T+?+CKJFY>)%Z5%_Q5A<&!I1V#8B8:.Y
M<2[_BN_KB>VZ9V+3VL+N+Q8EQY,Q4>\VJB/:0QU)H7.:% :1) XQS 5/'U^9
M7P">%.!)W6TZZ0^1HI%J0G\>68Y3F8=R.FOZ9-"S,J3(\TL,04,T#8 "Q!&
M+745;*DW.OFPWUI-5$)O./%\,%]O*G-I8"6YDY-Y-1(BKZ=./7>8XL9(4T=1
M )+45TZ$ S+%YYX"?0:0J'4UH/$^.A3$ 3]!$FY#><M$87)F% JA- *1Z 5K
MN0-W!NY\9^Y\L7.;SWAQ?\ZWW#95"N4>*;A<?Q;W6Y&5>3&5>S%+,!!#D\"+
M@1=?-R?JBKSXHKG$9SPY(*8*W:N20QDNDA$E%'F_6LL].3]6">$8 A'H!0];
M?S5/!BRR^W?E#TK[/>/4.B%W0D&>\PYF3[8^8;AN8YX[]?XH),N0$ :B;/!^
M!NRQ=\W1/9=L;U68.3=24$'ME#S.;W6"L";E'DEF'IF]9#$20M#[9HWMNM46
MPCU>%M1=&A,PQ\!^PGT0;:XH +GP*<C]!@2?/:SMQ88N+HU S:=\CBG;H;AX
MU6ZD@J@D17.J+G&AF"CL_APD1.,41!"@=2- !8 *MY<G?"T8."UBV.=I=R[W
M!MI<A"<(E2!<!@94!@8,1&/Y?N0%LX97Y@4 #+X8=?&*L. BV<;7XH$(ESO;
MH%[W$#YHR>(2)095)@\.\OZM%(00+(0@I\$!*.H&R(J K'AK6<O7@D.;73!3
M:T*0@E%;U!F)=4-"RL%AQTZ$4):!, 94<P/! N G?O[)V5?X-;>H<W5Y0,5R
MI=R@L#I6BWC6ROTZ3X22!$0C-(1B=]2T=2^<@F\6=#O4CC(J^$<AW6%!MT=W
MX;,I3 ,[NVK5<-=&/JW\#JH7PJ>W0;.+?9%-FT^ ] \A4MV3E5S9=N8-2.S*
M_.H6) :\$G@E\,HKD]C'T!4O)3'@AE=I5)_/_[LYB7T,U_">1 ;<\O;>CH#
M=Q4$OGVJ1C1+=KCT0]6M!'Z\K'F'8[:E!^F;YU)<D:?72W1?[\M#Q.9&XWBY
MJ7"6@B*['!>&03C*0NQ[I[BN+%.[)_M](9+?S> <$.)M$H_N28C7O\=V T($
M[@S<^3J$"-P9N/-U"/'3F(#W)$3@SO?*K;LY(7X:C^^>I C\^5Y?SX /=]VI
MQ',%-V!Z4)_01<&)K5I=*@;)QEA9"HKN&7 T#2%8]C_Y7(/ 77KP7Y$Z=8T+
MZ&(>AY%MI@_5_\1=][^!]Y;U \5^WP=WSWR\S-0/=". -=]UU65H_#A^>/AL
M5';MF9%;QX^%NH%W&O2.E@*[AAG]4./(/WZQLZ/]-P>3W8]Y8,.',?DWQR4@
M\L]\AE%P?+###=']S'\G!XM]1Y_-O>OV^LS%_>R"INLG1Y$=?X9S]_PQ#0S5
M@9-,2/]>^J&=V\"/P'#5R%X;3Z[YZ_?J-/3=.#+^G3W;F2E^!JSO_^X5,)W-
MZ]>_%V5%7E@I!_?8W?A$/U]9+R_MMP&]?))>7F"B ;U\CEY>VM$'>ODT' /^
M<HUZ 3AVE7H!.':=>@$X=J5Z 3AVE7H!.':=>GF)7@WT\DEZ0;]3#%#,]2D&
M -EUZ@4$9%>J%^0%BCU0S!\IYF7:^U%#O[?K\FE"8%XAA.LN_, \WAO4#"\R
M@F=%\E__0"GD<<-AS7?S"?_O-Y3X]L:)4O1W@OSGOP];AL>=Q^6FD%F_K1?^
M@>S^^\@MZ]\0Q7^FCVZ:["%AZKMZ]LNQH08%P=,-O5 RM%VMI;WH<!3:?\ 0
M#/G/OZ:O.A<"'.2F'01[JW\<61SWXQ_[\L6/[?^&#T7NM7[Z[P7L@+@K.\CK
MU@(K^.I6<*Q8"BSAE9: ?[\O0WA4IQ)8P^MQ@;XK<]B=,WYMD'Q"W+LR6F_7
M6!M>;'R)<]. O'V3QQ<_E;M=BO?%%Q14V9&W$:7O_T7E1OZT5PJU'.A)=]T?
M.JO60IFHRC DN3?W:3LX\SDN^+):'Z;:1O %L>>J7:I*C^"^I>!Y>Q0,@U@2
M@W :%#F^*"Y<W^E?@ M7@ L/NJ5,YV.[:)%]'*F44E*KF%K/D;@+P($F.C6_
MC);*"(;K\V8LC];3=I+! 97! 0'A* :1Q 6;L5Z9'P X '!P+7#PI&$*R2J6
M&Z"*B8CM-49TYEM'2B\1(4P,69MWQ\T8H6JS6.WV S><2!DDY#U2L@@!IR&&
M9 $D?*UCW._5(H4!F/ 'F/"W'5/0A+>0CJC9B(KBDCN(%VMQ<XF 0<4JO.C
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
M]2D>_2B$&-F8LQRNUIJ#\94-7.T$=7:95WU!L6\_29:"$!8 !(@;WDJ%^?(
MD89EGRT/G;4,C^")YJTL0Q(^RKGQZ<;"UI;D.2(V;F%=7C"*XLZYR6\_L2P
M8'"(I:GWZB;\^6R"FK?.).$'*530]E+952#(Y@8??KX%RL!UXM0G]^!YO\7,
MUP*@J\ATYI?_\<LY#X#%>7K;][2_1:^H2DY7L^%PZM@369\T9OAP&.9U6W=Y
M3IJA(92Z8$[CRSGX)[>( 0Y^>^G*-_FU6+/G<K) #-GN6_3<7#1*22,O"DCM
MVAFP)$02!/!KX-?7[=>YJE ,]-.YS%F\&['+SV_V=-4OG OGO-[T^N'Z1E/!
MNW#76;4,GAG %999YS6)\XP7"J$X ^&7W"O[:GY^%^^?EPYVW:.?OT_JZDT^
MRDX;C()/T#&2NHBQ%EAVB[&[[A[DMY\T1&,HM#O[\IYYJRM+PG8"?YD]<0H5
MEJYZR&,9J]A>YA +V'Z [0=V[V\K!W;,X1\=NY.[=0:$PM&IV\8Y**3*.L$G
M&"_)<!.;K6JE07,]S0OCYUDP&F().ELN [H?V*(#X'![^;,W8L(P"+H8W5)(
M)QU(QM28-:U4SMLK4#M,H/*.H-1IP7. "0 3 ";<$MWOE;B );'-U5O!5&[X
M17K<"BPA#O*V@.RWGP23!0LTX  #LA\@^]U\XO.-^- :UG4;MVS*X0<-61N4
MYJP1Y0U&]ZE/BD @!M#]0-P Z'[70?=[I7MWQP$YGR;UI2P:]7!@]3&U7-RY
M-_GM)YFM"_(0@'EN:_W&Z'Z\[X51$.]5:7N%9>!;08;'@.0'2'Y?"G:N(L&Y
MV^EYZ)(UKW-PR#-@)7AI3 ENC")QT:DDPDAJ^?.\B3?^[2>.D!"*/K>_ _9@
MO]X>+/#KC^?V_;X[#XT4D\,Q(JSXV(X8W&#<1=Y!-R?UH1"-7S =";P9>#-@
M]'V^70)&W_V_9CZ"T??;+QUY,R39-;'V'#XUQM.D3?!6.8\A=_DL!(=(\-H!
MKQU Y'L_(M]ONR82A.UHLFT;R' T&4Z248=-F#P>S'-1!(% ^'LGHJXLJUKS
M,KU9]M0U0L#6 VR].]I\?^\P^<HT"7:%@$$#@P8&?<,&?47KQ8O2H_Z*L;@P
M-**P;43"1G/C7/X5W]<3VW7/Q*85K+.4V805D2&2=B=H7Y>6,TZA<YH4#F$(
M I&@@"H@2@&BU.WGD_X0*8I&C:JMDQ 7>)-+,2;UE4DSR9 B3S#E1R]HF@%
M >((0)>Z!KK4&YT\B=V%5YZ&IK-R@N*RTEYK@WH>#NQ251!*,!"./T><OC'6
MU%$4@"4%6%)?"FVN@B5U!*MG &FQ-BFU:(ZV2$/;SF4)JZZG8TMA<FH4"J%T
MMCY!4;"O!?:U@#M_]L'-Y[(,7B?L98%%3S#:Z3!$V?ZTFJT=F%U/!HC-H@J&
MOF"6 7@Q\.([\^*+YA*?\>1N)R"8RG2Z=NPQH=?4P(OI1>[)[+>?)(1C"$2@
MSQ51!IX,:&3 E3\C[?>,4Z.5OCF$*;+G5)3A%E>:,#&1N,RI\]0> 3$,"6$@
MR@;O9\ >>]<<W3,>Z7)4M31).T4DML(YA0Z7V+"Z\T@RBYCQ[$5+0LBSE1EO
MGS6V:U=;"/=X65!W:4S ' /,,<!+N)D$WXXGN]^ X+.'M;W8T,6E$:CYE,]E
M^\IC<K;TZ[C -QNK=*%CVS0+1-@\VT=2$)&A'DJ"H@Q@EQ&@PNWE"5\+!BLA
M6I$5=#"787>9SI=*%W'6208&U+>?- '1- K1+* < #  8'";Z<;7 @)2K6SB
MH$IBB)V87:&3!HUD:66 D'=P)2""1K)U$08  9 5 5GQUK.6K\6&<@D.F=I,
M%IRAU=W G28Z3(T\6-@=?T4A#$4@B@%,9A M (+BYQ^=?85C*_(L3NM]5$12
M.L"[&V-*D7K^TM]E0DD*8F@:8JD[JN2V%T[!-PNZ'6I'&17\HY! 2;=;)2O^
MUS]0"GF/LW6?3XZX GV"O4-@P\"&@0T#&P8V_/686>]GPY]/S[H"A7Y-(_YL
M( 9$I*L@(NU7G*)9LL.E'ZIN)?#C9<T['!<L/5B%/K=2KZOR5",P77-$11A3
M!!^P020I*+);JF,81&4K=9)Y;L?N7DA+@*ST!<A*[QQ%7EE^\0JT#A+KUYM8
M!\8/C!\8/S!^8/Q?C6_QWHD'8/W ^F\'^@&AX+J3&&?R$MQP* [H5*_)\*S.
M"8UTW6H.. 5%]Q0"FLU+'&;_/\<<W"4F_A6I4]?XN1MVR(BH^W'OKIUY'$:V
MF3XTB"<NN/\-O+>U'RB6C?A-K_R8A^T::\.+LTL::N 9>F&:%A;JW \*EN%;
MF2_,;*T0&%9N5XD1&#]VC[:7?SM>9+?4'AE/*=[GG91,:[GUH$K?_\N64,5@
MA^HFX$>JDZ;L>E..!HG0LY[:2$^;&7KL&J)Y>+QRX"^$360$GNKRV33\[,XA
M%T6!/8TC0^_[93\PLCGRF9MF7QIA,:W\>GXN,-1^]H!%U]><@[E-E7(H1-7N
M8+P6>J&[#K44WTSGTK>"D1GF,GN6*(B-]X.JS 1F1N[*/S+??81=3PWFK[]$
M?M]6=A9_O,+4#W0C@#7?==5E:/PX?GCX4%1V[<,#+=0-O%.A=WPLV#7,Z(<:
M1_[QBQT*[;\Y -Y^S ,$/(S)OSD&S<@_\\E%P?'!#C=$]Y/^C=PAC7]'G^6"
MZ/;ZS,7][(*FZR='D1U_AG-P_S'-S,&!DTQ(_U[ZH9U;ZX_ <#.S71M/KOGK
M]^HT]-W,TOZ=/=N9*7[P:_W!W_V^B?PKF]>O?__PA<\^2TJZL%(.4+J[\8E^
MOK9>@%JN42TOD ^ 7CX-QC[SW0+T F#LIM0"8.R2>GEY2_VHH-^+C#]-",PK
MA'#1,/26)) MT?(O__<;^>VMR4CB.YLGJ_9KOV.Z8;DI9"YBZX5_(+O_+BDN
MYG&V0<O6DT;PO/RFC^Z9[&%CZKMZ]LNQH08%P],-O5 RM-V9M7U*&T>A8VY[
M^BI."G"@#W8@YK>V*$[_/>\:V%M= T6_WY5GY(FTQ[9_L1@8F,#5F@#R6O@[
M2:M=V98-KZ;9)0JUT%4]_3U(>7M\N[)9?L;^W/5) 50'>>ONW$L;+&$0_546
MX*\]$-7=EP38[8^D2F.L! I)3E=VHLDBWB:5A)([T]&;6P,<MY'.[.N%E7&Y
M16PKM-!KF/.>O#*15B=1\+Q8&$9 +$Y"-'&16L3[M]N5F3X     [PD R",
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
MOB3!'F5E&)$%2"@*$10)D>B+%<EN)U734NW\\+R::0=D:\!*[JNMY/Z86_/
M?PYXA2G$ICILIZ)L=\OU)MJSE[/^Q6*:J8!T:YSFCQUX,M+F\Z'5'_.)PNPK
MR",L!M$T2-H 5P>N_L<$FU-7]VJE9$DZO40PFGHR*$K>)NI=;)N9&XJ+A13U
M*P*_<JIE'6L;Z-#*7'U7XITA60BCWGD3Z<IB]:X1J;9;<&TM+Y%4"/Q4=2,;
MM-8!*S2P0ON@+$[WZ'-'CF'5P9NM0/<$GE[K:]IH]:K;-[<8>PD"%X*[H@9F
MH")JSZA6&Q9!EKN)PNXR.!"!,A"3'QP$"1P #P >/B.!\Q0>F&8Z*8](9H.H
M"[FUT%<L.D4NMACBR'9+&4^F?8%?Z/V%-/$V:)'+X(':P0/#0LQ[1TB?:?DU
M+\R4!S(W8#GW!9=S?Q;&_'*= TY-A*8R+BZM*6)8BR0VIIS2F5TLR2PO[;2M
M5)&6W(,)<=OEE^9BO*N3O8MC*(Q\ :A U@:X^==P\S\+1YZZ^72EVFRRW"J"
M.D:H(*2F&Y*]6,+&8F:UBFVG'6%!*,N)%O1-.Z]&CQSB$1:%:/;/FO)=>\:F
MI4;9WV22!2D:L 8#:[ /B6U^^=P!]&0BGL_+18]!*FVMVPC@I#?E+K8&&XN3
M+6U9];[#:YC1$F5=4A$I;^RQBVU8$H-HZKD-=)"C ?@ \.&"0=%3?,!->]Z8
M1\T.8BM#I3GFDB%?N5A0I ::@2)SSY;MH($RM4V?Z^X;_^S.B=,,E5>$N)\D
MC1C-C  D:/X RKY0+_:OW'C]W:DY.\\[M-,Y0)W0GQ MFZNJ@D@R@TD-ARET
M<K'=JJ7:0<*R;,T12HY7?6R*HKHD[>:4'_LD\6S]1U]PNPJ !0"++P(6?TSN
M.0,653-JUT.]*#H4/;*IR$3&POAR120XCS=<E$J%57L[[@I"A??Y79?#+"ZB
M(02E7P"+VT\6?4J]S^M;+%W/DO'36Z4_)Z9W[ A_A3._*G3]W7Z'%UHQHK.-
MM-RBD:"J6%\BMQBO8KM.K5D81> 03E(0CCY76@RDE  ^ 'SXN.AK2U24 :S6
M-#DV)AXAJ):!>Q?+.-=;J[JA2O'*X4=]D=M:=:&*[O A/]1.[IC1%/W.I0>_
M&@!\T>33%YORI_,+KD$(7S5W\L6F?$>V#MY?=_W^ NWTO,NWTP,><@\> CJH
MW6 3/6 :H+G>)9OK50S/"%2WH'IZ0=47MF>'NQVAM5$P]CL^(6BX!^AH]T)'
M^YOIOM^D05(<&/85&_:-Q?H7*DCZ!9WQ/G:;OM3.T;67%#V$CIRG<X\"QP-3
MZ-P9]%GLB6J]92%#C^BN*[K#K]:6@NXJ<K$026$0BI& ] ?\_BO[_;67"7V]
MWZ_,AHBLV>'&2;&XM2[2]'0R2G*_SP][(A#"4!#)O//!ABL+/]^_(,6531"L
M,NY_E7%C,=!E*UF\'@>'(N>6F]61Y%2XUK*>KBE1Z7 *>JC1Q: XA& 7K$AZ
M9;X"$ ,@QI5%3Y<MBO%ZQ%"20#&&ZLQ'XCJ+5[&HH7N;)$>,?9D,G()8DKX?
M^EXG\$TC#+,YJ&[!--ZQ?.D7!+H[0K4O!6%_%O0\=*&P;!R1C%Y009F2YRRR
M,.-:5 L$>L9_8.PS"H;E?KL7;IW&%)\WW%:KVDV2;(+[V(=$*(C +M@)&/@_
M\/\;\?\_"V'^QO^CMK7J],:N[<"CUGI46QBCU'OS\>[7^_^D@3<(3/(V,D^.
M<+D12JU6@\O]_U" E(%8XKY30"4[,+3(#\+<W5'ZW[L 9\>\.%(M0&X(K/3
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
M=RP SJ.*)YFN;B+!5<R@NKO60)_CF4QL(.:VP8./0S /$ J0!#8/I,,:^@S
M6:": CBR$(5;>!K\' [( *$E!?$@#K#A2V!_7Z7I6,H(U$B&:;W&\G05$8VZ
MI5I13BS8UABM9*&6/XOE,?$KV]R:D\ YYIX1\C;?!*]D\_8.2561((%@*PZF
M*X\(L? PC*7^5_8I3C@:P'"?A=C4H#4R>,GT^?TTV_2Q!7 /OZJ<0X'XZ[L
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
M\@JD-4:DE?D :?WP0/KC;O+_^O'SX:$])XR=PT#@F\7.OI3W-T+^5"C U_H
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
MQG?FS&$V_127D[L8>V$[/]D5S9Y;]DU>NF#B.Z#,$>?,);E?S:=[*"?.:_)
M;#O5UNZ]S1ESU!2#%S4[9E%/%P?RLA>YCSSPVF*"6H6=6\LKC>)G7-7L>98!
MX6[8^.ZFS=7,].9FYKDSE1:-NXPHLZ4(4QNO'_,+.C,BMX$Q]!4=_9"7>5ZD
M1KS[%4U_>-#GPLCP[Y.=UOGBF.!>:C[J=?(^*@Q-J63E<G6S9U=;=":?6I8?
M[C-_C KL>3#!;_GT"NQ^HI=$%T>0HF.4[]C6DJ[3R!AGB\/FH]ZXQ4@1!Z1@
MK].I'P,4)WR[0?P\KY=Y3DV>V.[)-NV&#M^5I6Y3YX7M[O,MF]O'^34E^^U!
MS3EY6P+D)WW[EY\*^NR8Y"LY&^\)0/[\+4J?&X\0434KVAT)K$N&;II'_(QD
M.S9+2TVQ5^"6<;$CF]%:?=UR;YUF6(A(/NAM,><6_G.%']]$X3_Y>H S11=_
MKO(G#3;,-VG\&P,.1HYJ?2,JQ^C%K)4MR8]3S43>I?+IZVCT>\+ B8.++^!O
M76X1XK/#AI]E?C[]K-?G!007%O_Y2!L6,[YD,>-@N]1?WR"8P&^?J)BFC01X
M--#3]1&(.V$&W[FQ$=XC+D(A;I>D=3G9H;G9L"C6RI7[^U)FE"(O6;UBZ,2!
MC_#W=U6!L'KQ$1'%A2%!&&0<"3)\@'AOG!&7IFQZOFH/Y5RZTVM41(:WM0F
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
MDA#L1%3O]H6V; [&C0*;*+;R65G-Y++8=*2.9G@PZ&!H(6J"51)$?U\CMR[
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
M ,[9ENY_X.;7R2<[(!]$?7?,89W#,OR%>0]DW)V_XC4T\>AU-/K<^W<"V>S
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
MEU6!H0(UX23MN_HGYT*T(V0X]\GHSVEC>]);.??VSWH']'L3L9\/I2_5&$H
M%K>Z:58T7K$%)%2T F=H\&WS",H.NQ-3KPW;(SG20_V*-,I5*O/6*(I1-L6\
MZM[H[^<J,J&K^"? N@,C48 10;=QNOT28/2$ON39]_DC[LP_I:^Y#WX9E+[-
M##-977;,QLR)S#*1SK(UBF'P>^.E^5^ZMHH7CWDK:3;G;9)D"P,Y45Y!G($U
M8_K/[G.B'U7=>?*:&#;F*_9&N)/Q_4SG__T_.QG=C;.#JWRZ<>.K:&!;7B:9
M)=HZ01$W8<R)\.0;3EEQCNEM,YF^COK:?[/1<DP'"I A&O\/%?@9T^. F+B"
M&"#93H70^]IND=#_\(7$M<<97'-C 8LQ%,*OWL9BS'4R_CF5N.B6,__CJ*F!
M\>)?W6;N:#8;_PRJ [B@[%P1Z'WTZW>7U&K!8.?<HJNY$5TNF.!^2EAW27V,
M@GO2[]>]H\9BU(T\%E,RNE]/3+4H**O:9(2'LI]6[[[;RU13G($H \UUPX*X
MD+,H$8"26F*DQ&X- NA#AMNI $Z.L3E1(,&J)(VT,\ &B%_/X1G&GDMD3A%\
MXYKJ3I&) I.Z#X05\+9"OF"3++H@F3RH$_Z Y\PIA>LL%*=QB@/X2[[IDM)"
M_%23%G@>:PJKE31>-V#Q,!48H"U$PQ\P1E]1ILU/\49$V[+)@[W)X4^N7" A
MPH&]!@V%C9@6E@N>FTL6IUS! @0*K>>(Q^OR9ECJF-$8 LGFO =1EHYI 5O=
MK-7;*?P@@6+#!'[;A_N-ZR>0\@Q ?U$=,W]>GSHU!)UD41_=L9/3556R<-N8
MF=&$'!&I"8(@#IEYT"U%QY[-82^.\RC.V9I::?0D^C[3&V?*/6&8<3TSD$DD
M9*QGQA'L8CZH<^>@$K=G%+!#XAD%)GU-!0A ])8/DN"$<O&&9066]%D*M+\$
MC%"P#!!#AYIB/,>.#V"1I %@(76NZ Y>'\5-#(1<XJT \BD>(A@(^P']P!/&
M=@WCY50"+ 4\E #7K"FX/Y/I\2ZU&.' W-"7 'W81P<H576 >9U8$VN*DP=7
M8"L +SD-H$^A3+ ;AF=40-6X"2QH@E$=O@AV <,R-X<9U^#<6TAQJ']?7+XF
M$G]%/,*O>/VFL"%\QJ<[!!HH0TC1\2BQB2\2KK8V.,,8U<LLG\J+QDINZI-*
M>=X01^O$Y-?OZ'7Z(+*@0+X4^.&*FB.#+ P;YK&NV29R=60)#])MTQ,$!']$
M&A(EWSA=@+S.;8.?8C'1QS"#9U<M?$LC]AJ^A43X"'X+"M)%AGKG;7F+'AFB
M D?E(:>(\GPUCB(9/;2YQ2I520P*K5^_X]?,D_)PH+N4I[;L*=E^@)-^!!*,
M)W>,;.Z#$/O8@X\(93"!+9+_[?D TI$X _N)$N].!WS578G9"PKW_PJRBV[@
M.<C /QW\V9V9N-28*LU^)1]AL'J?TKW9)\H3FOH24;"^KG1#$588Z6$+NL8M
M)0,PY2]_X7]3H,T"4L'M66%'G(1AH*X&['BBD7+4V"&!Q !/1)41IX %:AH3
M#O[JNOWP?W5\<(=B7$FEKZF*!C.8<\ #Y#K?$"?X#[HBTTUPPY;F&C4P'VZH
M HKDFQG7GED!Q-$!* %+3"KB?LPY0$JJ8D)((X"]PIO-<E-.Y4PW-L"#,+;
M%@!=W"]*@*4$T1&V@.#R:Q8)#"G5S2Z14,'$X0W^M@E#.($$HQZYKK8#W05.
M(3R!?X@]%3$G*$Z C9EN;($@%@)8-S?-Y3AUKZMXBV3/NAG8-40LNFU(I@K+
MIU1N!E_QAO.48, BC<TT^WNWP$: @!H@;. < #P)E& 3RF/?$H/Q#HD=PA/R
M,-PJA?-MBHGYC -!3#H3<91E<#@BPK]BK'>0A;]E((BS-/P3T":RD1T%1T^;
M'00FA8$!QNP_ T;H&)&QI@FD.BR)$L]I%NS#VP!>]>8Q6]?1_>,8P9--$FUJ
MNPL", ?L-(.S;+QFV(1B\Q8QN$"7.=)!*,@H=\L2=L,T(MM8%ZZI)@Y!(2K?
ML&-S:, +LG?%#)-K9V>G1.X3X64&EHA5U%8L7S9 -V!?_F^^Q&^)KVO'1/C5
M:GNU\REQ=R%XA^\!&X0KC[6VLLO@[9 K3$T#RS9YSDY:@RBR#4.V"00*+!5Y
MKN#V +JKP [*%:4A-S6A(O)4W>.N(BUL22#7,9@P/ZP3^^+[DH[7HPLG]<%.
MQ-*B;6 '7M4-Y-(:($D!MP7A-(F%-)-@M1AD(@"+OM*(1F/:6ENT/V2_RQS1
M?8B/<J"GG"@B$!O\)5B.C#-1&YARF4U.22?_,?&"!% \T]-_8RGQ&/8Z) OD
MP:8[!X7(K.:33_6$]=A3]G-" :$@H@ >]&O+(Z#5ZFB1[I?Z#EW6>Y%$IMUG
M*F*^%\V<VANM-(H[[FC$1#QV27$/LXFT?7^T0?"M*;9)<A"D!R_\H.I!O- H
MUZ.[K5A;IJ5Q(M7KIH;));_Z]1O,E7'HAAK^A(0F9D O#;!F;G"Y56-B$<"Q
M$ A#)(.$JV!R3->2@@+9O/L-'I;BX&F]1",(HJXAG+3$ NO)I8D.GN\!..>#
MJ0>Y8$0":<L+U,8,N$G$CP^2"TR;IEL84("EV,@M;#!V,!T9Y<FK*&E@FB0(
MNUTA-Y^$9"^!Z@];203%9*P?01 E/@IV*<"LX6E]5?,!7SNJ1CL(NUT3?"R0
MI/J59SY<5@;@E4C,1N>NJ1*X+NXC;,W+7!",-768$$].<AKX[S A;KO?X-2!
MT_@D'04$>U.Q>$S!=\.HY^66O:T>TE3E'$KA3.N#@^EGQ60_OCY7$.-ZDP,L
M'R<.9%YS M-G*N Z.(PKO(I-$(P1 %Q.3E("(D:1C8%$ UT0CC DT[1)VHRJ
MVB ,3#I-;^S8CJ<<B#JHO_"?L;2S]#_D&]YLY"/FG[_=$L;$X$BP$*21:T'7
MO&*;.'0@13O73W!3:G/=/7#H;06<<-@Z>!N&F[Z#9>)M>8_;&$)<D."NJ1W<
M"*Z+Q&=8ZL&^@=R;L%%BUO%I5%*WI*J<9G/@W+,TD]K3%P\-W/#&GL_AR^[J
M7%+BL5B!-E 3?/"56Z%Q+3 N!=FFZ5*;@):N@)ICO 9_B0-RS:?7U)UMF!C9
M?-=[=[H=6F)'\&EZ$O.Q2T\,+[ *\#C'M@6\MS"KY](<$>L 7WN2N'Z2E%1]
M3 ]75[J_9Y Y!/X'+C/-];E7 ,/?(P-+!G[PCCC=4!WL>%)U"1:711S&&Q@S
M0#!#EG-(%(RM/_D4Q\6[3-EZJ+N9LE?Z)G.P%:.XY#S&'JO% 2VM]:4<7[&C
M=N/DO@G[VM2I2Q["V#;1VN9&:>^0@0O[W 1AIX7XZQMO)<(&W!4KV9W;3D(5
M>HL4DBIK,]89R:U?OZ/1 V?E/X2R'TTO>H=>].@Q5AKU(UR%[]GH08L58$M1
M+7,V>FEI1A[;:3$F1\P)&IO3Q5B8XZ0S>T@O8K.Q=PQZICA76*XERSP:3'T*
M:<\OBB4#G-4[0Q<EZSAYVY7D6!:UW'W/X2K::-*W%C$'R!M+_EAQ?)EFF4;1
MR.K&G$;I=K\B1X<EF0<5CL7>)Y(3_$"280.T)S&<ZRT2O\"U"@'O 'NH-@D
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
M\OO<Q+$-\&<CNZ$'J!RRN'%E@#@?D!16H-G5&"NC0PDDJ]1/)Z9@@2!QS2>
M!)*F*I.X:NK2@0><2(:6*%HSF<Y'<1[%$^SY"+;C.@Q]_%XOWH06F.##1?C@
M?[P[2$W"^-[)X*<#RU0T-/+B\)8F2#W!Z@+3,KIR#\ NT$RAJT/-[*D:#PU%
M6_ &"T)BEY8;%\W*99M$$[J2(.NBQKP0R[T00KZ\$%/70WJ-F9=A@^K?](2F
MF=;"Z'DHBD:SGVQ!Y\L.BVT*TA2H"8()^:["ZW)7!HK6!0+H=:'!\UI?Z?5T
MRUB$-+&-Q+U5Z_QLW%Q66NWS6K-1+5=:G5+M\J1R6:G6RC4&;,N!3<P7L,4+
MS24KS36J7+367+S8I7KT.7&X3H_=XY=K*RIRK4J]U*F<<NU.H_S]O%$_K;30
M;W0ZZ/=8C&QC^.G3ZEP3SGURD!HWM,?D)$>D*/:@ Y%^1PZXD\_GRQC]$9JV
MXWLWTO<N1_<^F=Z[,;WWQ>S9NE9DU\PX@"](5:<,6=<?+N].8'EW+._N#_/N
M(%" #)!9I0J]7E?69= U%*!V^RK455W@Y3Z_6(U5D"(2(NR!\RD0-^'@;L0F
MG5:)Y=JLT$&D?.D@L;8QL])$TX@U![S8[1)-JSF*"C_3L/!Z[:-V>5I!%MMI
MA86%-ZQP8,].W%HG))GNZ?8Y,X8;UL#P^7S*TN]1-?RUWOI.NI+!#1YLK%,T
M2?6=0U(C(F0U!5DW+97O2@*/D+5O:EU#%&%7Z&F\H*M]N=];3%\4Y&:K=EFN
M-4OU:7'T:J6"P;5=:?VHE2MMAJS+D57.%[(F"YTN@X^7FF!HO-@,%5^%BO/X
M-RT>EBIDTH=182L?%R,SHSK/&XC.:+B!7-*\+/;VMV$J8%-+0#:(HTH QPL*
MRZ--U7BH[6BHF\#'")A4 4!)5I6NH N@*XN2U>WU-;T+%-6P1$67=#@+3"0?
M\D=74P5!Y;.8#ODCP]F02N7VO'92Z[23ZH;M#M*;2%.,=OF\<GI=9X"^'-"5
M? %ZO-!'J4*6T[7FHL5FD/["R(1B*B2?(/ F^]GE9")H)[U4D[<;?. 5O57D
MZH&5GJ69"I(AJ>C(D>VC%Y?+(=$NKIO-.GE=:OWD3DN=$J'"&5;!QXZQ<S)%
M+IE2LW>S$.)2B>3:YA!:N(KXQYL1?.+LXSVU5.0JST,TGH^*1O'3<R/;#Z;*
M<O1VI(@A_?:9L^_OH673JIIC7 <PR<IJHSN (.FP0I/'@4\Z!R2],->U_<S2
M]$<:M:SW%0NWM!+YOMR5H:YW>X9E='L"Z!FZ)@F&9F5&;RXW+MN->NV4..]N
MT+\MKMQ M-(Y+>Y,C9Y>B/WU^Y+U-T\==E?><IT&%ZMZB&'K>!9Q;SLLG-F>
MP#?4NJ1CP+\=!5)P2,&DH8A8+2:1FP)?Y U-US1E+J3#3VV+*)XS$S,K"L:_
MJ0D3#RBZD4 ?%IGS2]8A"H^DUA#?:Z$RI1M;.$914_^=GL8YPR$5/DG='N=1
MXI[8\63&KPO8=OI"0V1/:/K6AJ:2ST$/:7)A +_&IL1L/"H5PD.FP'!33R\6
M>>7C/KVN%P4MCX]/+$+RWP;W0+3=XWK011RL)-8%%T>%5T]4!EJ@7(:X[%?*
M<M[9)MG-PU/]9M//%FV!3*W]FTDWTC"Y4^B;GCW&6VI6#J;[9:4K[-6$L(?5
MMEXU\ R*Z>L&OA:&]S/R_ F-5!1R*S&+_^91AI"Y%]VFX$.S@*[&T?4OD +4
M3)'X_WD(W>#KVA'0R[[^%:4+#8-@['\Y/GYZ>BJB.Q0'[N-QR3.'N+7A,;0&
MP#NV0 ".#5&79/X80[>A\((L\SK/RZHL' \$2=-Y^/PH/0G%87"_S&QXX_2L
M354J16U%::8@\4=:W 6\=SWT3GA/^@/XOFO:273L)<\F??,"3#A!QN4]>9V<
M[5H1[2*G9"@_H/VQZ%' )V&P_X#3"]^C3[^%#N14^M-'Z1*Q5=S(\Q*-@R^(
MBBCKGQ=2KO()'(QM]C[R_ F-5!29Q#!NP=RBHK]D13P>\)+"ZXA;Y"=QK]Q2
MPDLYBCK/O(M9> +_ZBN912Z*+S!+M2!%GS;,P$56*B>(].>7LXLD207$TH;&
M,X+)W\ S A>'0# 2DQA&,)A@-&2\Z+R&"$:316D/Q@L)Z2/ _W-B(1T)>&W#
M)DO*&M*8R<+P@3'*<D:1F<1\;$81$)V(O,P;O&@HNG'\*""+15&[\!GIW#FB
M%"H44UX1J;_*V *OB!K]Z5?S2OZ!@K'+EG*G#X9*Y*+PG_\P =F6@&R=.<PG
MTRW@UF""* G/\%FV=H;^J3 UJ9E+JR_8</$ =SZW!@-/!IYK#G'P12''L>HL
M2LBZD==M$SH^Y$JX23!1/:GN^"T<4:>$8!@\UX/!$X0.5P83=--$Y:1]V.NX
MV7+D:<>YVK2:)*T+&%4OI%^K^2-TC3^GBBXY+1*7P8Q@?:J1@D6=5.0+U6C,
M<8]'3B/#EM<IIDL/4N6ME(O(2KE 5LIEJ;"N+^7"\KKSDMK+\KI97C?+ZV9Y
MW2ROF^5U9U9,<V7Y'(BYS)+M=CGRJNWY 3<3IUEE0;?A.*#FJ*!OPXPN9M..
MSM4.8K"[]Y'G3V@([+(4M%V.O U-%\'BJW"W"GM>"#R:]X3@2V"PF[4=Q&!W
M[R//G] 0V&5Y6CMUP&0O3RO._!5Y7N(-XWB@*8*HP6>!+\C%X#G81:"^,[2]
M.3(""1VA%TW/M4)$ TV7^M<IX5"0+X4#--.<H)#<J10WO9 E3.HU;RJN%CM/
MT':27V0F7)6&]/7%=^K;/I)3;@*!Q]%S-0E;231S66#IQ0R$&'.M9"Z%"0UC
M+LQ<$L_+""^/![J@D /W O^D[(JZJ@C>@^$[N6MJ61'$E_9*7LHFR4MDY,5P
MB)'72O)2F=!\;/**CL<("/4-7E&/'P5#$&5\/ ;)QSY.Q[R8MRB24_K"-.#R
M*@;"'L 7781OI*@7"2I=50:/6*(C9CS$((7QT$H>TIC0,!["/(3^DWE5.7Z4
M!%TR9,)#>SJG^5KSB<I!DE>/T%[<1UY]RH02UIE05XD)Y=, W ,R__ 0J15%
MZJ%)E&N9!<5 B#'7:N;2F= PYL+,)2&LU"3,7))J:,(^F6N5#37G'4OQU%[L
MJ#4\E2Y*@%: (]5N!(GQ$8,6QD<K^<C(N>BPNM!;YBF9%U11T!!/:<C0BBVL
M9R-33%4:>_:($R/(WS=-%8T-QJ3>P&#YAZ3W=-#*%VIM\PFS F;O?<3\R2LM
M5,'GG$-S*62Y8\R,!<@N$2\2FE$S0IIK F6,-9GUEQWXR;_0T#W'BBPQTHI(
M2Q8-GD>DI4NZF$EW9#K,).^;KO#K54D<@GR$A\@\CPQ%-C1R\I:-%!TG^"+)
M15R-YB#I2&3BQ$AI2DH*LJ1X$9&2S$LB;V22E(!#4N&C5$-EW[R$]M FS2A&
M8@QUF 'U F.Q^@^,JPA7J;RNBXJ N$J2>$U-O'Y2IN@J.G:L9(6LI$V2E<+(
MBL$.(ZO59,6J9C"RHF0E")JFZ(BL9$63Q2P:5C2E(\J05[?*5.M2#E>U09K)
MC(_H:75F_(IFKHR=&,YL@9WRVL9 8FT,(&MCL%1861L#UL;@;<QQV$_/VABP
M-@8;V"2LC<$V=9Q7+/T!MC% :@ZK1__!?0UQG3-$ [*J&,<#51<T@7H:Q%W5
M.:/F?SL<CT>3U><;<6%^$8WX587,L'.A[88(P$YLI)7;7 WO=X<T908C>LV;
M/>&;#-KRK'H,0QGF!U]%3%)18(V9&3<1;I)Y7M(5_7B@ZX*ATQJ<@KXK<JK<
MCT?NA! 2]CS@69EG)F6NPF;5@TC3M<T[[L+L@,$ ,P7Q=K] 6&\F(WV39,0.
MX#-8862TFHQ$1D:,C @9:3ROJX9R/$!OJ 8E(W'W,5F$]15G  ;44GJAFQDY
M;<]K2[CIIKA%>A)7'+U(C<R@(V/,PS"$,<]*YI$8\WQPYHG2@7B#ES5=D(X?
MT=SRAKKC=*#Y-CJO)2"*\L:N^6?5T;\4__!T9(Q_&)(P_EG!/S)CGP_./K'=
MHZ,_)<$X'B Z$H7(";<K\GF!:>*C?5&/-CTAFE/P:".\![X#@VWP2^)]>ZE;
M0'SN4*2#8US#<(-QS0JN45C(A[%-Q#8&SXOH3<0V.J]$;=>$W='-RI!/PC;R
M'-NTP/TO" /N&_2\20^Q#1KBQCGG)=)Y8\"'41$#%49%JZF(!7P^.A7%I_ T
M7M!U53Q^E%5)TC7J=MM9Q*=J>WXPVP$TQ4[E67:Z("7U1>)R$[2=<I/X*GN(
M'A<DA;=>'_?)/Z(P&MK[R/,G-&A3L4:>NQQY>PQ-] ,.UX;>HVVF#SN_NO,7
M,A?\\!YZKVSOA77UB..6XV<+#FP?03Q.6^;: ?HM&GQQ*+)6"\(L]*M'G& 8
MZN<\"SY#R[V//']"@]!28RK[!U?98^\1^I\B25KJK0+/%^B;I$#G,U;?1[O0
MW]OA_3UV&+6'P(/<F0<0>C='Z*;857-J>] ,W->R15K=EM_)%V+"%Q,.Z^"K
M#Z)(DE20%$E1F3,H?P//"$8<!*_HC%<8KQ!>P0<E>,,X'FB*(&K4$:3N]AP*
MA!&5-,@19,HE;V8/=9-G1P062F!(P-AC!7L8C#T8>\095+HLR,<#096-76=0
MD6!UY2&T@PE7<W#U"S3@9>RQO3)[T]1;6FN/Q: 9"##B6%T)EO\/HXZ#H@[S
MR70+(B\*@B@)S]A\L';7;O#%&BLT>D#KC>NOCW9$%[2'KH?&> H?X<@=DY_%
M,>04?G/YWY$,QO<^\OP)#4G:8S)S2""^4>^1LK,26W4(?+A048OJX<(\XI^[
M 1P1A#]S1WUL+Q0WGC"D;+28%O-!,3QA'+22@\2B@-NYBW)^A6?QWSR*4P;I
M*<YS%7A>Y37E^%%$?VG\CH^7$]!'!#"U3$B '/IH,IT4WT0&S#2(C<!?X<"]
MZPRB*TCE1_@$/3" B!0H)2%6.%I;+W+)YY].P!#< _\S]_X>M"_1W#0UM@I[
M'CE:0DZ6X(X:C,4R"41YA)V#:CXAL^83D#6?6"JLK/D$:S[Q-N8X[*=GS2=8
M\XD-;!+6?&*;.LXKEOXPFT\(8E',NULBC]9 WIP0.SML6X<!-OJQ&\(TX3@
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
M</-P?6>"@(Z.CH6)18J-3<I%1TG']7?_8,T 'AK"(:@'A' ;0,1# .$AP-H
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
MNY7G7#*_R1]OL;A0)(R#:^SQ#OEMV/%9/KM=Y97G [J'5-T1O!)26XZ^D?)
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
M(B:1R*W?VGR5(@S\L;#[6U/A?X80NJ>V#"?)#=]POGI_Q_SDKD2VN5Z\$+"
M:!\[4/G,HII?9R!@+^U*%;JM6EV;DOFHSE.I,XRZ[>/Z[O$)2AT%MH37[3WU
M0!MZM82^IIBG,:3\!7<Q_6YYY7-P5!34M+D^Q&M\CQ3XI,RBJUE@:R:UZ;@^
MR$A$T7![ZI:?-0=D>=EDF,"5,4F^25O$6.@RZJ4(:UK]"*\G\]+HCFFM@D:U
M6V:$;MY;CN:68 T!![Z$.7=:A%2K]-I1)]W)[.'=!G9WH3*V :PZAT^TKS+>
M"+NTZT$GJV[FK]42\W9',L$9.''*3P06U#SFFBLJ>[N<>4:*A(6)F&2J1O%)
M"+K7!&[/2:!;I[3YW;*J*A:ZW^><.;F92M/PJ;JZZ6B>KP#+O$G/)Q6G *>_
MGMQF-ACY^TK)K]$*3BAV;R KVJ/@[7Z[&V TG!\JK@$^:1$]QE._EH*'TGYX
M8FG@" ^EA1:00XQR>.:(#@/20X#*/\/J)[:H\&QUA7\)<H61!XV>UKAYY@:&
M2GJSPL/@1_ F5:7=X&_>29T" ^B]X3F'G@WX;5RMEH?K=?CE^HU])5158_7O
M>@G']/PW3E*QI 6#5]3'1+>_?!>Z!^<"51<\S@"5\&'[<V;VMZYG_[.$ J\T
MNLZ8;OP)8(!TI:W&S\T_O47/VW>QB$"EK+Z^<6C'EH-&M0F;H330.#1?;'T"
M$,7XQHKS&7R(6@-7.5RCT+@^,6PPZKD1CYD7B;*Z2HPB"T DWRFS+YW'VFZ6
MMQDKF^:N@9?L<2A O53U2M*4+V/Q:EKA)5;9(XG\!UA>..-YRWJ[15[L)XG9
MU"3U<?1/8GFZOA*2D:FKDT79=QG<WQ:CH-D//+>"^KC0G*U\/\]C%PC90'T.
M [RE7I[&7Q8%O'8I(FBU]_3D392LZ*R:[7K6%1",@>)YD#K+,N)-^$YGM7!7
ML=CN;#6)3;CCWGI:AHX7!Y6U<UZ+-]DS\<%"-&'<9P8696Z2GP<EAN0R+3;)
M[[(IT@,8"Y5>HGIUM-.;)/;Z'!MK;QDB&=X8-3]\;HV0M@@L7&J:+O91*PFI
M0OR_'<J8\L:5MN*KY]PL1!W-4W"?J]A0$)U\VOO&B7Q3S*K\;8=SAT#"+$*4
MW>%KF&E0]>U<9<SSQPKB3HG2R<]8(;V'TGR7XZQW @K?F$%TR<@OIU;9;#K<
M/9\5!G26'I%!%FZG0[XZHU=JI5=]78UX,&?.Y!"Q9MZK2,!%/%V1_"J=$E^
M=.48"BG"4-!_/,2)=FY@'J-5H2^R_)),2^*>^)XRO)KC;S4\!L'-%'*[X7)
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
MY&?BKP.VD*GQO"]NN6[EI/@-;AB]B.OIH+!;K)D^I,M:!HX\'R'<38-]NV*
M]]O9-YK;$_$A=S$_/,OQ,1XDZ,Y^4AED 8?*_A(XMFYSWI YZGHFN,R$3_1S
M]QGI@+N."F# A& /#)#6&_S]-IT]Q:HRR.#"'6.J<4I>QKSOVA<&' Q951=S
M2QV@^%KE&FQ>QN>9$J9-\2]IW8D3;]67=T<=P063 SY5D5;N^9(%4Q53H7.V
ME>$$7-TT/:L7,F$(@PL^]QRU.0NW-*EI6?-F#3_  %D+X]1745^3/UIC5B*
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
MCB/?H@@HNRH&7$%(:)J\1DFSSQ,]D9/8Z2GB7PF=AW^OJ8F28M1\86XV0_9
M]"WM[=.,#5'1[^-_3WZ_[#0RZ761I]-EDCG-*COBEY>F!9O$[>ZHN<S5NPVX
MU9*73,VE5,V;^GJ9K7'NWG8_:88KY[Q)'>]5S+?UJ.U,M\Z;AB.4E^M-BE==
M>C6I+GD@$OK:TCH^0]>1$C0H ORQZ?A)?,T_SYQTJ=<R?4U9DS'?"!RJ^KL9
M8WFR%V"H*:@"TB\LHSLK_XN/*]9?:NB?NX+_K!.!OTPO*#YZ"7C5A_.P(SI^
M75^_"-";'=!;MH&SB\G:'/WWT;6WX4#S[!1O3K<+=P8$/]*?*7JKH$AVAR(/
MP0!&V],3$+S,AI7;YVZZ3AO@5=-9906ADX_4N> \_''5EC*N(V)TB:CDP*,G
M(["O%$^26(.17XG]< [H*$]M//'\5>7QK+=3?X4+7EX;F2$&OUHK5EH-?624
M4S!M$L)>%:(4K\GG$G-VM+=U]CGEQ:-<.51;Z0Z/9EVH\Y:\W[/IM3 "U'KT
M]\>NF]L%*\[LRVNQ885@N5<_<*?K/@U0H1=RP.EDMY?L_+(I.-Q!E^X$&]'W
M3W6@2L3L-^FB]:&V%E#RX'+\^Q/Z7HWJ-ZC885,;LQC?JYA]AJ<!G<.QU(9Y
M&+?*Q1COHL>N(BHK=3S2#\4V418<(8JL#B?R_4_OS,&BCT "5O03$773*+:[
M4MS;=@"^CH B 9.^X!N:^!HIFL;2;&MR'E5G[P*#*=T9X31?/N?59VU4KP02
M:+%D8HB<7#7L_"079^W-@Z9?-B3A2([K-=[1"Q6^0)/Z+L1 /@N1ZJ#CK:BI
MJ:V&,,=.V0MG5A$'@+QB=0.&J)JQ]XN&OFS:35;QZ&[Z%-=_:2$MR<1]RM;;
M'D/.HKR!3B)-DZ['*#A_N>&6.$<[NN>.5^B<;S@]8X#&-_QD*TRJD [W:VSD
M_?4\X1:R^7-IMX$TJ>IZ\F?]!S_>4?1"Y"BY) Q^K.PK4@EWN(A8ACBNP:IM
M=SC?Q$@[<5)8C$=^K&+MF/%8=(9XY55R4NC4-\@'/TF8DSM:KHU'IV+%SW6
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
M<0Z.?"RF1CP5-K)WPOJN>"%AD0GR8H\:MCJH^?X,$!DMJZZ<!:]Z6"R1;OU
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
MO2 -<^'V[]L CZAU'?VCHS,R;YB_H/<$G6>Y/2I:B"Q%J.@R_4DVX&PRH&S
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
M 3@I72;:#0SN9S8;F ^(O/:://> 6?FV7:UOLGMV<WUY>7+Z0$C-LZ7!*RW
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
M@*2:!Z#\Z=VF31OX0;;%1S+_,>C$<W>\&TSV^[":\#HN]8['#B2XMGY^>?%
M0[B?K$^I&EN]0;5X.'BFJ\4G'Q9(BV9U9W=Z_HX,!RX?[4F/VF1T7-_^G9<^
M@[0N9[UJ%0GQ%Q6AHH'@1 WZW)TN2Y61C/C.7[ [KCH5U-(^=)J<G9R?G-V<
ML9_[[=85^W\W^^=M.%O2,Z4DA&'TB;GU"6L1](GB?EZ'F<9&&<,(2$I7X-EH
M;==0LK*;ZG65W<)Y!_>/.T.AN0!T[P*-'D0KZ2BRJUHPP8E)]#36[^F$&+<E
MTYV]4!= NP.-2T(;OPZ'.YSS.'0/#I&,#I$?(YF6-L# ")6\)/9$HC;A^R?Z
M4#J  A?J8?2@CA!>^K0EUR\^$;_6R\ZOYWZ$H"&, +$A$ KCSKKJ9\Q V%20
MJZ2B<6VKI*9I9TCO]9JUE2?ZM-$G?IW:BDE/]N.^9I:4^@G>$0? /2G$+182
M&0QTB]W--*J4R"WH_W!2 !FF;%8@:N@)\"5 10-AI\!5X2P]ORPX+3#A9OJW
M47= 'UY2/Q@-&/<V]IW3XR8OGKXR-DK%6P;1Q"S4^X0,D*,'(ZOU;5A/;G8+
M\U;-;O7>U+<JV9Z&XGZ +?*T\*/?^!B YM&U7I2)F25&FOJF)H6TAYP290!0
M/31C/F?JNADS3#T+R-LBZ+-54A5DH-H79MXH>>(+'ZCH>"VW2GGT3F]-5JF)
M5W];,9VOGPK(=;HMDOZP .C6&PE.S<IW+1">VA;IS33\%Y]$"];>;].T]S/M
M_4Q[OQ>;FS^R:]^#^G9SL8S-QQ=7ARUVMO_OULU5ZQ-;FG,SFT3$@'W12W2;
M&-O0@QR@*91 8,ZPMXI]F@%!_XG83M^N+'IHQ$R0EH+7:Q,*HS9_DK )4RB*
MV#<)#Z!>O.' 5]/R.Z[NC#QV4XW-@(!E.JB] LR$9SL)JB++HX)M,/NQA=OF
M'L)VN 1 5[FVL^,7FI [PN:Z\_98'!8)0!@2_8G\3Q$#MD+IIQZLK-CHCDO,
MEJ[LP[?PF176BX, I((GL&=Z@'^[V"8]\? Q;BN3['??0<3*[WSID"#BMBT=
MPK& YEP_I-&&:-H.HT#^AI'0O@>/@Q]XQX_AQ>#8A6_2%\B'J9!Q9P2#@W#R
M^JH3.8]AE@$0:06]GABQ0$.3W M5W^Z_E'N2II7]YBT 5?(GHJ^3*U)/_*GB
M7@2V5 L)9VWH>_0:#MQT2_@6",GO4*]X;1^ %>NC+B*Y2T,._*&.7\"]A'WQ
MD2/X$+MXHH8A SON(SW;RJ7YO.TB[2O B>*$$@4.G^'"JJ*9Q<_?@\2&T2(X
M#/6)=SG=-(O*8%<%41JV36=ACRM'0-1#\D"U$EAUPIL G*'NDQX-F;N:N"H4
MO6L.T*1'9B/8*]FGN!.R[A#$GYJP&C\)&TE7.=$TDX>E.S=*APW5L)DYP(RF
MQD<7#2S*4_=$30LU2IH^,&6BBZ[ZL(# 5@.)?AB8/RPA3#"95>6Q"0&==8&Y
M]-AA;G EM+S\JZNI=%!? E77U0YWT-VDI\)C<F)#R1)M8K!JJ];::F<-GPX_
M-]94H%*5'>OU56Q-T5!=Y@";1I6L$&5-_7247EP9^_(ND:Q8S<^K8"*<)G*8
M?E1?2W3H\3LJ;E621KER*,A!*L]@H"9+%$N[K\9_33_,HYY2JU@E;%8+7!_/
MU @-Y$LQU-9B0;[]Z^N3[^=GK?,%B"PP=N9E]0O!,4,2.PSA+A5T)3S1E5&!
MMSP!A]H&2$@(3W(XA;5PA\,Y)/A-)WCR&SX !#Z&L'F9TQF'ZPD5*T8'GG#6
MT#K[QDW.2\(,C:U/P R\[,R ])^0M4()FF8)T([UQS0@!.F]&[M OJY,G)LJ
MR)H"@[0[(1PS5(Z#(O\SD/;65K7>?'WJ+N*8]SO*LZN9>]CUJ \G^C]I0:V=
M!_.&/FKRB(V'/1^IUA^B!PDH.Y2.1-L)QHGA=0P \,:_*K -=ZO0^ F[AA;W
M@,6!X+_ =V>0M:&GI:4G\OF&(6J'$Z%OG1%)46S@HPTS\.FMBA11%B/0S@8^
M101RZO#W*:(L/L6!WRG[@2^34%K,<*@HC[(ZJX68LMY2K -<C?LJCC:QYD;\
M-YI>?!4PI&Y041./VFJSPV@$@= !UH<LG1.\5,FD7:5ATT)/6(4(P#=09FL\
M3<*Z0%)GYP7/D]';LMR#EOW4#K+=I*(."^,:'QMP-@?%H>YD=47[J#(6BV&:
MP8<QR=FX'3)78?-<)0&SQ*(,595,ZAJ'+1ZD$=_HC@ABBE8OD_/R=:1D<[OZ
M">3D].FO1ZRJQKID12C9L5_X(A=>1OL'ZD=J350H[7@8"ZLTZ345N!SEHO;H
M<9MBLF:CS<=DZX0;+Y&R@<"H5I#/)$J5?,2 L>QP//7<)6)VRJ918>A23'3%
M02#^C!W-YN-[E7$;OJZY.A]@1JOA1<(6#KGM CQ]8),FTOG*()JM6DUA[G)8
MJ8ULR,B&^H+(!O*8(W-J]YOLYOPT=)D$ ;E.Z3#LHO\6>>$46(M\34'N5V#W
MVP!9R%'2)5$GE,Z:<Z1C,"OWTOP;\F222)AEF<E)IDHZ'T&34$\5;%6GA5%^
M+!J/.F(M$1UZDN\8B]AHJ$[LN5C$Y,,"K@9%NE$RP/79 @^;)O#0!!Z:P,/E
M]4)O+Y@7^NB(75RQJ];9Q7];['+_ZK!U>EU^A_2[8F&5V)X$ $YD42-  /"@
M\VQDD(T<PX@_?N?' =6X4?<"2+G%\+DN1W,-^4G[OB.[0/ZI+H+ (N,H]01:
M6M%8CZ,XC@[["D3?1_,31A+R #A,XZS$@:M-1SF8HSY#^(6 !_^%QX4^)L^%
MV4<. M1@;'J+<79X1M&!*<F!2@0)9!0)+S%[I :KO#KSGAM6KZMLC'+H+DLD
MVW862[9=WQP<G?SWY*A%(N[PXNS@Y!Q^?G\A-P;@U=KK$>8'R,"V2M<E6>-B
MM2&=@"?8M=T33NPF2A%Z& %.2(QX]DE#ZTB=NM:-(XQR1%&:*FRD3DV(JGRX
M)XF^)*R0I.:,)R332X-5XD!%*<.@SEC5RST*PX5ED&3[EN2(,W(G9>3=Q9([
M[1\G5R1FVK_8U<GW'^T% %0FPF]N'^="1/CI FL)0.UIR]M3B\0ETA3%,$\D
M>$[>3Y1 TE(YI(3F1"RK+ X4P\+OKFG)3KY3RLM)(L*%IZ+K\6@0WI_^:#(>
MD6R'F(H\'9N(.1D^@.I %V["5W73*I4\TF^B#(IH_D_>K"!<_-#'O"*,XEJ]
M4DE \+PVU:V[5,NZQD[Y$-.5-\DB2&=+XF'(HNLUE32MBLH?7K4O\7MIB7DC
M#Y9"'BQ<90G2SC0Q5I),.G+9J5HNVJVE<N:*Y(5F1<U2@>B*(% F>> FD(^,
M=U S'2>$D!M.82Q5:D8SLA8-F,85VC),I ;/FN7QWCNN4\$P?PPKH%5R,1">
M?Y>.0\X^'"044>1F,UVF2Y<E@HNR!7&>E/9&;[*FI1F&AZ3(<;7G#S%Z!)-Z
M[$!V,& 9Q%BRIJ+;U9X^4LU5$0\LH:G6*=6,0]L?%)3 6_(HJ*6J96G5%@R2
MMJ[.3L[WVR<7YV^.16>7RYB=*_5(!8W7\UJ9<VV9<&X. O:QA$QA@ ;%-Y,5
M0"=UCTNFIZ<0"&O$S",R8*BXODP1(OIV6*'@OR1OD4I9ZOK%?G$N:D? :2?R
M!2AU-1W9'0^L+FA4BOC2I, L#1>5/@4F+166"R/U*-P0$\,# ;R$Z%#Y)RB#
M'Z,A=!9]BM7"M,7!=#D&U.C2YP X$H[6[2@$"G3(+K/Y@(A*H2>X82T)G4QJ
M_<.5I"0ZAE81T-)H%50_+-CO/Y"*8#BGO)Q3LL#QE6] O*#N]&!#HT2MU[42
M\)R8JR@'F@50K8G=<>P?UHQ0/C67#Y4++ZE>L>3@_Q/!IM*; Z82@&=6B,B&
MZZFP=8IS(PT;X^NH5&H>#^4[J\1!B&47$VM"1N5'_E)FP@+C(CVA#&&PF[NJ
M@+71/=Z9B1IE9Z*?17H&TNZM\$3 75V;>+*Z"AG&TJXG^2(Y0=JZ:"9#^FF8
M198UXT&VF.BHHJM-)=:T0-SY=J;$:!JI2AU?)D-RL8BSBE[QL>8_ALSJ 'WB
M6-V910.Q7(LKU4%FW/4EBR<GCLS*K%X(J;HV-O/G@H$S=Z0&13A6868\8V"[
MB51=IZOT>"4$>@@3$I%*M+KH=J4:4BN&ZE8_H$S8<<TH54IGE-2AQJ4@J:>J
M'[QU@>A)4\KV?):4&1TZZHWJ9MG"#SY;_.^6B?\U\;\F_G>I?0/68OD&SB_:
M)X<M$Z.R3/BY]+;[_03(9HI"]/NQI\.@-3Y4'0E!/_2$2JC4Y?P* @4[%%J-
MP<@J%,49?^X(5ZJV@:J9(:="*.@AQBQ,Q)IP&O%[]"GK8&=C@%]$5BB9M7WE
M&_IX?.J!H8JA  7^5,UJ2->[P.H-9:>T-XN%MFHJIOC8QPA==NSZ6"[U)Z@Q
M0QXXK(W%3BNHPO$HXNP@#@'@AB%&8/V&V[#EW $??>T$WZY\[E38Y04[\.^9
M95F;[+OPL55(VQ]Z%?8](-V/6LY5V']^6>N65:OC%W4;NI/0A3M"_*2M),$>
M6VUL-M?8[F9SO;[;W"X35#.<OQ .A.YT*1?#Z]^L6H6= 0.+B%U'P-]1!;GN
M.L8"R7]L;]<KP*?P")ZP]C3O[M9J6\6\>[Q_P:XD=N9TV/7HMPC+Q+6OJ)$^
MUH=U>[?:5%8>59LKR9)7V*>""60!]4<*$N##O+C?P?+1 V'+KE2&?*[#(>#'
MB0PO3=@J)&*I4B:64D$HF4MJY=N),E;S3BAT.7&!=N7D9QZXD@RRE&&(?8$?
MUA1 %W!0$W"H^I)7=AEKSN\%0>Y%6B,6H0=!B,;+M,&Q%J<34=!)Z7H+5/%/
MX=M?,HI<U/*&W6FKAN\I5YQ(7(#HC*/R-OTTY)[:2X;:Q<AU?U?JSZ%BMC@;
M^L%OM*S@I<3I!W!A(.%+.BE<LT(%K^_NU6J,5_M5MCIYFTJ,T2Y+#]XBVS]R
M_L>4G*O>8AJSK;A9%AH$8IV8"/!VO<I8Z[Q]<M5B^]^O6BUL-U!A!R?G1R?G
MWUGK^+AUV&;[YT?L[.+HY/CD,!\AOE1+^<1$YWQV6<@Z4G=[RC0M1O^WJ@A!
M=1^HT)ND7L6Z-JZZGE2YPI]U>G22,0:81E5_2'H4$_).<I83X#W.AZ'J5(3/
MB\I15-G$O$.!?O<X::(944O-<31!-_<J9%M-RM51S?,P+8'>YU&4M/F)\3P4
MCE"5H8':[J0?A]E 4+R-#+A)RE&8Z1;-*0DO>37E15(!!G*Y"EHNEU.KL6A.
M+?9S_^2_K2MV<<PP^V4!_%L?(.=N/!?!*Z7FHI3C!3)GHML>IMO!L7WK@EP
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
MC:82ISE33*28.\[I10NU8J4RSW$6BX6].+2%G#G3:R=6"3]RN! YM8DBK>%
M4^!),1D.$JHP"F,L<ZK>MFZGOUA=J*&8XG0X<.KOLFX@R'(X(.P.Y6K)Z=M6
M@N6,I982F7?H9JH/+1TH_JK.O;5@1,5>VW5?]C-,"$MG%J>1\H[M;O>!)-DL
M7M%$J9HG*<>*W5'==Z/7D%,LO4"HN/\U@V^US.IVD4B5%>&$\:7W>LH2FJ,+
MND#7(L'IZX.2 M\YE2QZW2]JY^P+A:Y!/47OE84YFT'G6M9^J;]7JG[ZV[O)
MR63ZZD7[C=OOM.WVP,DVQ7F-T4 7UMW>L9P%C#.U]&)&"$VAPJL7W8Y[V!\X
MNN)P@V(T#!#";*#R*\&"-2X+6@QH(#B!0O_RXN;R;#(>34_'Z ,\KY%_::.S
MZ=@>.,$FI7P&QKJ9!SDC#$L&+$6$5$S1-9VQ7,&D5\_>7A_GN6+1<EVR*=@@
M$IR+!8 %XF +Q-*0SPEPP0"_?S*3EK3]<S]'BQB:+2VQ2 &%\X9I#U""/PH)
M^GVC$.&4(!Q%H#_ -[P6(S&F(4T"*LMI?M@^0(#F;1N-0(+\NZ.&<)8!:&GA
M65J4/6BC<, IPI+6*I&Z3BC27'!&B@@2L12"$L/ 2@%!1Z1O,++_$]]H5.Q
MZ2-=I8@.I;95/X&0A$HK!%O@+*=>_:,IR1M@$)<31*,]V$2!ZI5P92C!<R5J
M0AE("LI:N-%:K <;36G$CA8J_ _"2S%A=2"4M9P5_W9I"456<X1*Q4+,*]=-
M0'E.JTZ/>B^;%JQXU]9LA+-&YP(ZC, M:C/6[]9"XLP+8"WQR5J S?XR1*[*
M<0 >-%>TK^/T,:BIO22/A$R\XA>TIGON@05%^VO6J*-Y]53DL7IW=E/MYS?<
MCI)Z#OR( :KY#$LS)1(/%L(90(9&,/3"+3[?,='3"KRK,+LIS_\7(+D,0\TG
M^E&1MW_0?IU+EA,6:O?7X?!2SG#*OF#]OCZ(?\.?_X?AW ZG>X24@$!/Q9)/
M?>1'LSDL, FLXT0.Z*,$NK%']I4]L371M]_;:$_#]+YQCG\NXSF]9Z'8'N<P
ML+"SL$ EO4>3E,".N-BQE@I,TM#@P>9DO$V9WE[?J&*C#RN(40*-0KP]?F(0
M8F<1XO.<<7IO@,$ @P$& PP/\OIX"6W0!W!=B7R19#A=HC.6%!YM(&+#9I[D
M'*<DWQ[W,,"PL\#0_$NIA(>]$QSC!.?[#P#1<^V>08A-R*C_N*SLNSU.8N#!
MP,,*'GPA,BJQ8C0Z0+?VR&PQ-B?C!54QE6;QL*/#_PS0X=:^L=$[P35G<T!I
MSB$,8AC$:,@[ICGFOC!'#^;HP6#!CF/!!2P5?!OIRPX'Q06'A\L-O9XY;S"W
M&\S([Q(<7(84XA=L*4"J7%_>VSMY/]DOM3A3!%!A5-^_-\BPJ9-(R13+8_2>
MZ0*S>-A=;]A^M"@7P/MF:V&V%C]JV_*JN_& 9X,.5Z?7_NKO"ID)65S_1WMO
MVH]"!.,/FSF"=(KDOCJ)Z(DDJ#;SFN)51E^ PT\S*>8IT=F'0GIUKDLCN7R]
MH,K;TOF.G*74JM[K[)AF4GM%:>:T5Z15MGR&9]0J,[QP!'[KX3O!2#6^W:[=
M.5HEYI0T5ZOOE%GX15K_\ ]02P,$%     @ M(E]5 M_3>N1!    Q,  !@
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
MT5&[=[!6!JZM8^6;^^:L_2KNZ+]02P,$%     @ M(E]5&47K+K\"   1RP
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
MP:(ZR;V>Z9YNF4$ELTOZ5MV\EU?YP]\ 4$L#!!0    ( +2)?53 J$HB2 4
M +\8   8    8W=C;RTR,#(Q,3(S,7AE>#,R9#(N:'1M[5C];^(V&/Y7WE'M
MCDKDD_9$ X=$@:IH;:E*NKO[T4D<XIT39XXI97_]7N># INTG=2[L>VJ"LCK
MU^_G8_MQ!C\8QC1+2!;2"*[]VQN(1+A*::8@E)0HE*Z92L 7>4XRN*52,L[A
M4K)H20$N3,<Q;;-W;AC# 9H:UW-$YD'7<B\LUW9=L'O>N>NY-MS?0OO1'Y^6
MVI/YV/]T/ZV\WC]>WLS&T#(LZT-W;%D3?U(-G)FV [XD6<$4$QGAEC6]:T$K
M42KW+&N]7IOKKBGDTO(?K$2E_,SB0A34C%34&@ZT!#\IB8:#E"H"84)D0=7[
MUJ-_9?100S'%Z7!@-=^5;B"BS7 0L2<HU(;3]ZV4R"7+#"5RKVOGJH\S+1P^
MT'DVUBQ2B>?8]H_]G$01RY8&I['RSLU>[T4DV3+9RD25FB<I)XH]46U[QVK(
M*9%>(%32/W3P9S/S9EXL,F7$)&5\X[WU64H+N*-K>! IR=YV*@E^%U2R^&V_
MU"[8;Q1-8WJ*/BN#<+9$XSK6?I6_5Z4^_7@]NYSY;TZ<=W:_ZYKNP,I?R_.>
MHX$>;,P^L8(%C#.U\1(6131#A3<G/=?N]@>65AR^8A@[!0AQ-5!Y$%BPYV5-
MRX8&@D<X.)X^^+.KV7CDS^9W".V'Q>/HS@=_/K""8XG1Z<&CN3#')BRF8QUG
MU4RG>VYWCBC,T0)&D_F]/YT<:1WWJG=AOX/Y%?C74UB,'BY'=].%,?]X,_T$
MH[&O1US;=E\Y^.-;+[^L"L7BS7YDLPQ"D64TU!M6=::HA,*5D&F-/-OX"40,
M8Y$5@K.H/$<^X*=$D0DW*C(A%K*<M<$=$6@6H<:$AC0-J*SW(J>#-78=( 7$
MC#>GEYZSH.%*XG:)69$L@NDSG@09GF%CD::L*'14^*\UM6M(J*0835L+=-%<
MN_] <R%5^>#T3SN5QUD')N2)8:BXDDB14:4Z$%*I*]"!?"6+%<&6* $[*XZ&
M)I0K3<=)(I'K7'=U%U6=7E"%H91)$!F0C!;&_)G3#8Q"I4<TJCHX3I3WOP!6
M*6+8_DQYW7>'H;:=TZIN/A:LZAG$*\XW", TYQH 6U!(^NN*2:KY3J$KN5=W
MI]LFM2G$G7/>CIJG^!!16S35'7$NNF=]C;/O_1BVW9U^L S7<$K*30#W T58
MAM!GU<)KFD68Q&[EDA:Z+QT]3)!TIGHS8(1CUXH<&U5TREDQRY"^:CD:C$I"
M5*YPU%KQLALBI[)T633K"!<]TMF->4SM*=FD(@&GS<1 R(A*(Q2<D[R@7O-C
MU[4N=U*=2)H=ZIIBT>IH*NI)5DHT@HIXEI(]>JK#WB>G6K+#-5M0]ASI:'E"
M:N(LFSAK_TZ5NHJVB>MM,"2\A@MRY]KB.1K<J5?MN*G=#O?=L2S06LS%NJEA
M\VRL)<F] "\>GXTU%NPO^?1VG 1XT*P4[6M2?YAN0^_K3Q7]O<3^HWF=_2L3
MLY34,'T%2'Z%+6*"NYD'MT2&";@7)6VIKE&O@K6O$/#EQONB^#1FZAT,+Z]*
MI)YCHB4HV1V<V.7?MTW!*JP_L+67G(X:+M41>M0 N2,I_7*(?.-%][WY7R=$
M7[\^._+N3Y^1L>L#!GYF(85[9(A,D]:JO&](FO=AG# :P]664\[C&'7E=Z#\
M@R%^<Z"T[R7#]N?8_Q<DZ#O%* S%*E/HO0'&Z0$RK)+!-S3D2*X6N\PHV=+V
M@(2?EQ+SB?050TBO.9-WWCCO#]3LSL5 .%[<C/K9WKMN5&^U]^X;>Z+M*_2<
M+*E1\4 2XYW"(T^"177/>SW3/=L2B$IFERRO>C5?ONL?_@Y02P,$%     @
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
M&BF1W(>>0O^8UKW.W?D;4$L! A0#%     @ M(E]5.C'%2$='0  S%8! !$
M             ( !     &-W8V\M,C R,3$R,S$N>'-D4$L! A0#%     @
MM(E]5)L,MUE8&@  ,*,! !4              ( !3!T  &-W8V\M,C R,3$R
M,S%?8V%L+GAM;%!+ 0(4 Q0    ( +2)?50BVG%L6%8  '_H!0 5
M      "  =<W  !C=V-O+3(P,C$Q,C,Q7V1E9BYX;6Q02P$"% ,4    " "T
MB7U4('-T,<>C  "Y^@@ %0              @ %BC@  8W=C;RTR,#(Q,3(S
M,5]L86(N>&UL4$L! A0#%     @ M(E]5/$;W>].?   ,NH( !4
M     ( !7#(! &-W8V\M,C R,3$R,S%?<')E+GAM;%!+ 0(4 Q0    ( +2)
M?52]0!7G+;L# +VG*  5              "  =VN 0!C=V-O+3(P,C$Q,C,Q
M>#$P:RYH=&U02P$"% ,4    " "TB7U47:4G<OYU   OI@  &
M    @ $]:@4 8W=C;RTR,#(Q,3(S,7@Q,&LP,#,N:G!G4$L! A0#%     @
MM(E]5&>MBA9#,@  S%(" !D              ( !<> % &-W8V\M,C R,3$R
M,S%X97@Q,&0Q,"YH=&U02P$"% ,4    " "TB7U49,?B_H8%  "J0   &
M            @ 'K$@8 8W=C;RTR,#(Q,3(S,7AE>#(Q9#$N:'1M4$L! A0#
M%     @ M(E]5 M_3>N1!    Q,  !@              ( !IQ@& &-W8V\M
M,C R,3$R,S%X97@R,V0Q+FAT;5!+ 0(4 Q0    ( +2)?52OYC\]Z0@  %XL
M   8              "  6X=!@!C=V-O+3(P,C$Q,C,Q>&5X,S%D,2YH=&U0
M2P$"% ,4    " "TB7U491>LNOP(  !'+   &               @ &-)@8
M8W=C;RTR,#(Q,3(S,7AE>#,Q9#(N:'1M4$L! A0#%     @ M(E]5#<NA>$S
M!0  GA@  !@              ( !OR\& &-W8V\M,C R,3$R,S%X97@S,F0Q
M+FAT;5!+ 0(4 Q0    ( +2)?53 J$HB2 4  +\8   8              "
M 2@U!@!C=V-O+3(P,C$Q,C,Q>&5X,S)D,BYH=&U02P$"% ,4    " "TB7U4
MIJG[\\T'  !Q+   %P              @ &F.@8 8W=C;RTR,#(Q,3(S,7AE
>>#1D,2YH=&U02P4&      \ #P $!   J$(&

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